DE2953861C2 - - Google Patents
Info
- Publication number
- DE2953861C2 DE2953861C2 DE2953861A DE2953861A DE2953861C2 DE 2953861 C2 DE2953861 C2 DE 2953861C2 DE 2953861 A DE2953861 A DE 2953861A DE 2953861 A DE2953861 A DE 2953861A DE 2953861 C2 DE2953861 C2 DE 2953861C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- bus
- pfp
- input
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/3822—Parallel decoding, e.g. parallel decode units
Description
Die Erfindung betrifft ein Digitaldaten-Bussystem nach dem
Oberbegriff des Patentanspruchs.
Durch die DE-AS 19 35 390 ist ein integrierter Halbleiterspeicher
bekannt, der einen Speichereingangsbus und einen
Speicherausgangsbus aufweist, und bei dem die Daten und
Adressen auf dem Speichereingangsbus im Multiplexbetrieb
transportiert werden. Ein Prozessor-Speicherbus-Interface
ist in der Druckschrift nicht beschrieben.
Die US-PS 49 48 623 beschreibt ein Datenverarbeitungssystem
mit einem Speichermodul, der Einrichtungen zum Erzeugen von
Speichereingangssignalen, eine Zeitgebereinrichtung und
Speicherungseinrichtungen aufweist. Ein unabhängig von der
Tätigkeit der Zentraleinheit des Rechners Speichereingangsignale
erzeugendes Interface ist in der Druckschrift nicht
beschrieben.
Die DE-Z Elektronische Rechenanlagen 1970, Heft 2, Seiten 95
bis 103 beschreibt einen Rechner, bei dem die Befehle auf
einem ganz bestimmten Weg aus dem Speicher über einen
Pufferspeicher zum Leitwerk gelangen und dort entschlüsselt
werden. Neben den Grundkomponenten eines Rechners, die in
der Druckschrift gezeigt werden, ist nicht auch noch ein
Speicherbus-Interface vorgesehen, das von sich aus unabhängig
vom Leitwerk in der Lage ist, den Speicher zur Ausgabe
von Befehlen zu veranlassen.
Der Erfindung liegt die Aufgabe zugrunde, ein Digitaldaten-Bussystem
der eingangs beschriebenen Art zu schaffen, das es
ermöglicht, die Operationsgeschwindigkeit und Leistungsfähigkeit
eines Rechnersystems, bei dem das Bussystem verwendet
wird, zu steigern.
Diese Aufgabe wird gemäß dem kennzeichnenden Teil des
Patentanspruchs dadurch gelöst, daß ein Prozessor-Speicherbus-Interface
vorgesehen ist, das aufweist:
eine im wesentlichen vom Prozessor unabhängig arbeitende Einrichtung zum Erzeugen von bestimmten Signalen auf dem Speichereingangsbus, die die gespeicherten Befehle vom Speicher anfordern,
eine Zeitgebereinrichtung, die auf die Tätigkeit der Einrichtung zum Erzeugen der Signale anspricht, um das vorbestimmte Zeitintervall zu messen, und
eine Speicherungseinrichtung, die mit dem Speicherausgangsbus verbunden ist und auf die Tätigkeit der Zeitgebereinrichtung derart anspricht, daß sie innerhalb des vorbestimmten Zeitintervalls die vom Speicher ausgegebenen Befehle empfängt und speichert.
eine im wesentlichen vom Prozessor unabhängig arbeitende Einrichtung zum Erzeugen von bestimmten Signalen auf dem Speichereingangsbus, die die gespeicherten Befehle vom Speicher anfordern,
eine Zeitgebereinrichtung, die auf die Tätigkeit der Einrichtung zum Erzeugen der Signale anspricht, um das vorbestimmte Zeitintervall zu messen, und
eine Speicherungseinrichtung, die mit dem Speicherausgangsbus verbunden ist und auf die Tätigkeit der Zeitgebereinrichtung derart anspricht, daß sie innerhalb des vorbestimmten Zeitintervalls die vom Speicher ausgegebenen Befehle empfängt und speichert.
Der Vorteil der Erfindung liegt darin, daß sichergestellt
wird, daß nur diejenigen vom Speicher ausgegebenen Befehle
von der Speicherungseinrichtung gespeichert werden, die auf
ein von dem Prozessor-Speicherbus-Interface erzeugtes
Speichereingangssignal hin vom Speicher ausgegeben wurden.
Vom Speicher ausgegebene Daten, die aufgrund von Speicherausgangssignalen
ausgegeben werden, die nicht von dem
Prozessor-Speicherbus-Interface erzeugt wurden, werden
dagegen in der Speicherungseinrichtung nicht gespeichert.
Eine besonders nützliche Anwendung für die Erfindung besteht
darin, die Speicherungseinrichtung in einem Bereitstellungs-(pre-fetch)-Prozessor
(PFP) vorzusehen, der den jeweils
nächsten Befehl für den Prozessor eines Rechnersystems
bereitstellt.
Die nachfolgende
Beschreibung zeigt bevorzugte Ausführungsbeispiele
der Erfindung.
Fig. 1 zeigt ein teilweises Blockschaltbild eines
Rechners gemäß dem Stand der Technik;
Fig. 2 zeigt ein teilweises Blockschaltbild eines die
vorliegende Erfindung enthaltenden Rechners;
Fig. 3 zeigt ein detailiertes Schaltbild eines die vorliegende
Erfindung enthaltenden Rechners;
Fig. 4 und 4A sind schematische Darstellungen der
Befehlsanforderungsschaltung des
Bereitstellungs-Prozessors;
Fig. 5 und 5A sind schematische Darstellungen der
Speicherschaltung des
Bereitstellungs-Prozessors;
Fig. 6 und 6A sind schematische Darstellungen der
Steuerschaltung des
Bereitstellungs-Prozessors.
In Fig. 1 ist ein teilweises Blockschaltbild eines Rechners
110 gemäß dem Stand der Technik gezeigt. Die Hauptelemente
des Rechners 110 sind ein Speicher 111, eine
Zentraleinheit (CPU) 114, und Ein/Ausgabe(E/A)-Geräte 116.
Das Programm des Benutzers, beispielsweise Daten und
Makrobefehle, werden im Speicher 111 gespeichert und
zur CPU 114 auf Anforderung durch die CPU 114 durch einen
Speicherausgabe-MEMOUT-Bus 118 übertragen. Die Übertragung
von Daten/Befehlen aus dem Speicher 111 heraus und
ihr Einschreiben in den Speicher 111 werden durch ein
Speichereingabe-(MEMIN)-Register 162 hindurch vorgenommen.
Das MEMIN-Register 162 weist ein Adreßregister 162 a und
ein Datenregister 162 a auf, die mit einem Adreß-Bus
(ADR) 120 a und einem Daten-Bus (DATA) 120 b verbunden
sind. Daten und einige Befehle, die auf dem MEMOUT-Bus
118 erscheinen, werden in ein Speicherausgabe-(MEMOUT)-Register
140 übertragen. Daten/Befehle im MEMOUT-Register
140 werden durch einen ALU-Eingabe-(ALUIN)-Bus 124 zu
einer ALU(arithmetisch-logische Einheit) 156 zur Verwendung
bei der Ausführung der Programmschritte übertragen.
Im allgemeinen werden die Befehle vom MEMOUT-Bus
118 in ein Befehlsregister (IR) 146 übertragen. Gewisse
Typen von Befehlen können vom Befehlsregister 146
direkt zur ALU 156 durch den ALUIN-Bus 124 übertragen
werden. Häufig benutzte Befehlsfolgen werden jedoch in
einer Mikrobefehl-Logik 142 gespeichert und nicht im
Speicher 111. In solchen Fällen weist der im Befehlsregister
146 erscheinende Makrobefehl einen Befehl für
die Mikrobefehl-Logik 142 auf. Die Mikrobefehl-Logik 142
ruft dann nacheinander Schritte der Mikrobefehlsfolge
aus ihrem internen Speicher auf und liefert die Mikrobefehle
an die CPU 114.
Nach dem Abschluß eines Makrobefehls oder eine Mikrobefehlsfolge
fordert die ALU 156 den nächsten Befehl des
Benutzerprogramms vom Speicher 111 an, indem sie die
entsprechende Adresse an den Speicher 111 durch den
ALU-Ausgabe-(ALUOUT)-Bus 126, die MEMIN-Register 162 und
den ADR-Bus 129 a liefert.
Im allgemeinen wird ein Benutzerprogramm mit einer
Folge von Makrobefehlen im Speicher 111 in einer entsprechenden
Folge von Adressen gespeichert. Die CPU 114
verfolgt daher das Programm durch Speicherung der
Adresse des zur Zeit ausgeführten Befehls, bezeichnet
als Befehlszähler (PC). PC wird beim Abschluß jedes
Befehlsschritts inkrementiert und als Adreßeingangssignal
für den Speicher 111 verwendet.
Ein externer Zugriff zur CPU 114 und zum Speicher 111
wird über die E/A-Geräte 116 erhalten. Speziell können
parallele Digitalwörter durch einen E/A-Daten-Bus 168
übertragen werden. Serielle alphanumerische Eingangssignale
und Ausgangssignale werden durch einen E/A-ASC II-Kanal
174 übertragen. Die E/A-Geräte 116 haben
direkten Zugriff zum ALUIN-Bus 124 und zum ALUOUT-Bus
126 und somit zur ALU 156. Der Zugriff in den Speicher
111 wird über den Weg erhalten, der den ALUIN-Bus
126, die ALU 156, den ALUOUT-Bus 124 und die
MEMIN-Register 162 aufweist. Ein Zugriff aus dem
Speicher 111 heraus wird erhalten durch das MEMOUT-Register
140, den ALUIN-Bus 124, die ALU 156 und einen
ALUOUT-Bus 126. Die über den Daten-Bus 168 übertragenen
Daten sind im allgemeinen im Format kompatibel mit
der CPU 114 und dem Speicher 111. Das ASC II-Eingangssignal
muß jedoch in ein mit der CPU 114 und dem
Speicher 111 kompatibles Format umgewandelt werden. Dies
wird im allgemeinen im E/A-Gerät 116 erreicht oder als
getrennte Operation in der ALU 156 ausgeführt.
In Fig. 2 ist ein teilweises Blockdiagramm dargestellt,
das die Architektur eines die vorliegende Erfindung verwirklichenden
Rechners 210 zeigt. Die Speicher-Eingabe-Busse
ADR 120 a und DATA 120 b wurden durch einen einzigen
MEMIN-Bus 220 ersetzt. Ein Speicher 211 besteht aus
einem oder mehr Unterspeichern 213, von denen jeder ein
vollständiger und in sich abgeschlossener Speicher ist,
der unabhängig arbeiten kann. Ein oder mehr Unter-Speicher
213 können parallel mit dem MEMIN-Bus 220 und
MEMOUT-Bus 218 verbunden sein, und wenn sie so angeschlossen
sind, arbeiten sie gemeinsam als Rechner-Speicher
211. Dies erlaubt es, die Kapazität des
Rechner-Speichers 211 entsprechend den Anforderungen
des Benutzers zu strukturieren.
Die Dauer der Zyklusperiode des Unterspeichers 213 beträgt
400 ns und die Dauer der Zyklusperiode des Eingangs/Ausgangs-Busses
ist 100 ns. Die Zugriffszeit zum Lesen beträgt
500 ns, die Zugriffszeit zum Schreiben 200 ns, und das
Auffrischintervall beträgt 12,8 µs. Es wird darauf hingewiesen,
daß andere Parameter und Perioden verwendet werden
können. Der Unterspeicher 213 weist Speichermodule auf.
Während einer Schreiboperation arbeiten die Speichermodule
jeder als eine getrennte und unabhängige Speichereinheit.
Jeder Modul kann 400 ns benötigen, um einen Lese- oder
Schreibzyklus auszuführen. Wegen der unabhängigen Arbeit
jedes Moduls kann die CPU 214 oder der PFP 212 das Lesen
oder Schreiben in Intervallen von 100 ns veranlassen, das
ist die Speicherbus-Zyklusperiode, wie sie durch Signale
20CLK (ein 50-ns-Taktsignal) und MEMCLK (ein 100-ns-Takt in
Phase mit 20CLK) bestimmt wird. Ein Lese- oder Schreibzyklus
eines einzelnen Speichermoduls kann jedoch nur bei jedem
vierten Speicherbuszyklus veranlaßt werden, also alle 400 ns.
Die Lese- oder Schreibzyklen der Speichermodule können in jeder
gewünschten Folge veranlaßt werden, so lange die Begrenzung
von 400 ns bei aufeinanderfolgenden Lese- oder Schreibzyklen
beachtet wird. Ausgelesene Speicherwörter erscheinen auf dem
MEMOUT-Bus 218 in der Folge, in welcher die Lesezyklen
veranlaßt werden; jedes ausgelesene Wort erscheint 400 ns
nach dem Zeitpunkt, zu dem der Lesezyklus veranlaßt wird.
Ein Lesezyklus erfordert nur, daß ein anforderndes Gerät
eine Leseadresse auf den MEMIN-Bus 220 während eines
Speicherbuszyklus bringt, eine ganze Anzahl (z. B. 4)
Speicherbuszyklen wartet, und die Daten auf dem MEMOUT-Bus
218 in seine eigenen Eingaberegister überträgt.
Die CPU 214 hat zu den Ausgängen des Speichers 211 direkten
Zugriff durch den MEMOUT-Bus 218 und sein MEMOUT-Register
240. Die CPU 214 hat auch einen direkten Eingabezugriff
durch sein MEMIN-Register 262. Der Speicher
211 überträgt jedoch nicht mehr die Befehle direkt zur
CPU 214 und zur ALU 256 durch den MEMOUT-Bus 218 und das
Befehlsregister 246. Im Rechner 210 werden die Befehle
durch den MEMOUT-Bus 218 in einen Bereitstellungs-(pre-fetch)-prozessor
(PFP) 212 übertragen. Die Befehle werden vom
PFP 212 zum Befehlsregister 246 durch einen PFP-Bus 222
übertragen. Zusätzlich empfängt die Mikrobefehl-Logik
242 Befehle direkt vom PFP 212 und nicht vom Befehlsregister
246. Diese Änderung in der Architektur
spiegelt eine Änderung in der internen Architektur der
Mikrobefehl-Logik 242 wieder.
Wie dargestellt, hat der PFP 212 durch den
MEMIN-Bus 220 parallel mit der CPU 214 einen direkten Zugriff
zum Speicher 211.
Der PFP 212 führt eine Befehlsvorausschau für die CPU
214 aus, indem er vom Speicher 211 eine Folge von Befehlen
vor dem gerade in der Ausführung durch die CPU 214
befindlichen Befehl abruft und speichert. Der PFP 212
verwendet Speicherzugriff-Zyklen, die nicht durch die
CPU 214 benötigt werden, um die Bereitstellungsoperation
durchzuführen; dadurch vergrößert er die Befehlsausführungsgeschwindigkeit
der CPU 214, indem er die
von der CPU 214 benötigte Zeit für den Zugriff zu Befehlen
verringert.
In Fig. 3 ist ein detailliertes Blockdiagramm eines
Rechners 310 gezeigt, dessen Architektur die vorliegende
Erfindung verwirklicht. Wie oben für den Rechner 210
beschrieben wurde, weist der Speicher 311 des Rechners 310
ein oder mehr Unterspeicher 313 auf. Der Ausgang des
Speichers 311 ist durch den MEMOUT-Bus 318 mit Eingängen
des MEMOUT-Registers 340 in der CPU 314 und eines
Speichers 330 im PFP 312 verbunden. Der MEMOUT-Bus 318
ist auch mit einer Fehlerkorrektur-Logik 319 (ERCC)
in der CPU 314 verbunden. Der Ausgang des MEMOUT-Registers
340 ist mit dem ALUIN-Bus 324 verbunden und
der Ausgang des PFP-Speichers 330 ist mit einem PFP-Bus
322 verbunden. Der PFP-Bus 322 ist mit dem ALUIN-Bus
324 verbunden durch einen Transfer-Bus 348, einen
Bus "kurze effektive Adresse" (EFA) 350 und das Befehlsregister
346. Der PFP-Bus 322 ist mit Eingängen
der Mikrobefehl-Logik 342 und einer Speicher-Zuordnungs-
und -Schutz-Schaltung (MAP) 354 verbunden.
Ein ALUOUT-Bus 326 ist mit Eingängen eines CPU-Befehlszähler (CPUPC)-Registers
364; Fig. 5 und eines Registers 332; Fig. 5 "Befehlszähler für den vom PFP
abgerufenen Befehl (PCF)" verbunden. Der Ausgang des CPUPC-Registers 364
ist verbunden mit dem ALUIN-Bus 324, einem Eingang einer PFP-Bereit(PFPRDY)-Logik
334; Fig. 6, und mit dem Leseadresseneingang des PFP-Speichers 330. Der
Ausgang des PFPPCF-Registers 332; Fig. 5 ist mit einem anderen Eingang der
PFPRDY-Logik 334; Fig. 6 verbunden, und mit dem Schreibadresseneingang des
PFP-Speichers 330. Der ALUOUT-Bus 326 ist mit einem
Eingang des MEMIN-Registers 362,
mit einem "Hoher-Stellenwert-Adresse" (HIADR)-Bus
328 und mit einem Eingang eines
Registers 336 "Befehlszähler für den vom PFP angeforderten
Befehl (PCR)" verbunden. Die Ausgänge des MAP 354 sind mit dem ALUIN-Bus
324 und dem HIADR-Bus 328 verbunden. Der HIADR-Bus 328 ist
mit dem ALUIN-Bus 324 durch den Transferbus 366 verbunden.
Der HIADR-Bus 328 ist mit Eingängen des MEMIN-Registers
362 und des PFPPCR-Registers 336 verbunden. Die Ausgänge
des MEMIN-Registers 362 und des PFPPCR-Registers
336 sind mit dem MEMIN-Bus 320 verbunden, der mit dem
Eingang des Speichers 311 und mit dem ERCC 319 verbunden
ist. Der Ausgang des PFPPCR-Registers 336 ist mit
einem Eingang einer "Schreiben-Laufender Block"-Logik (WCB)
338 verbunden, und der MEMIN-Bus 320 ist mit einem anderen
Eingang des WCB 338 verbunden.
In den Fig. 4 und 4A sind das PFPPCR-Register
336 und die WCB-Logik 338 gezeigt. In Fig. 4 weist
das PFPPCR-Register 336 Register 2510 und 2512, Zähler
2514 und 2516, und Puffertreiber 2518 mit drei Zuständen
auf. Wie oben beschrieben, erscheinen die höherwertigen
Bits 0 bis 5 und 16 bis 19 der echten Adresse auf dem
HIADR-Bus 328 als Signale HIADR 0 bis 5 und 16 bis 19.
HIADR 0 bis 5 und 16 bis 19 sind Eingängen der Register
2510 und 2512 zugeführt. Die niedrigwertigen Bits 6 bis
15 der echten Adresse erscheinen auf dem ALUOUT-Bus
326 als Signale ALUOUT 6 bis 15. ALUOUT 9 bis 15, die
den sieben variablen Bits 9 bis 15 von PFPPCR entsprechen,
werden Eingängen der Zähler 2514 und 2516 zugeführt.
Die niedrigwertigen Adreßbits ALUOUT 6 bis 8,
die den nicht-variablen Bits 6, 7 und 8 von PFPPCR entsprechen,
werden Eingängen des Registers 2512 zugeführt.
PFPPCR erscheint an Ausgängen der Register 2510 und
2512 und der Zähler 2514 und 2516 als PFPPCR 0 bis 19.
PFPPCR wird Eingängen der Puffertreiber 2518 zugeführt.
Entsprechende echte Adreßbits MEMIN 0 bis 19 erscheinen
an Ausgängen der Puffertreiber 2518, die mit dem MEMIN-Bus
320 verbunden sind.
Eine anfängliche echte Adresse, die auf dem ALUOUT-Bus
326 und dem HIADR-Bus 328 erscheint, wird in die Register
2510 und 2512 und die Zähler 2514 und 2516 beim Auftreten
von geladen. aktiviert die Paralleleingang-(PE)-Eingänge
der Zähler 2514 und 2516. Die anfängliche
echte Adresse wird dann in die Zähler 2514
und 2516 durch ein den Takteingängen der Zähler 2514
und 2516 zugeführtes Signal MEMCLK übertragen. In den
Registern 2510 und 2512 aktiviert ein Verknüpfungsglied
2520 zur Lieferung eines Signals μSEQCLK durch
einen Inverter 2522 an die Takteingänge der Register
2510 und 2512. Danach wird PFPPCR 9 bis 15 in den Zählern
2514 und 2516 durch MEMCLK jedesmal inkrementiert, wenn
die Zähler 2514 und 2516 ein Zählaktiviereingangssignal
FETCHSTARTED empfängt.
Es tritt FETCHSTARTED jedesmal
auf, wenn PFP 312 einen Befehl vom Speicher 311 abruft.
Das den Löscheingängen der Zähler 2514 und 2516
zugeführte Signal wird verwendet, um PFPPCR
9 bis 15 auf null zurückzusetzen, z. B. während einer Testsequenz
des Rechners 310.
Die Zähler 2514 und 2516 liefern auch Ausgangssignale
EOCB und PFPPCTC2 an die in Fig. 6 gezeigte Steuerschaltung
des PFP 312. EOCB zeigt an, daß die zuletzt verfügbare
Adresse des laufenden Blocks gerade angefordert
wird. PFPPCTC2 wird aktiv, wenn die zuletzt verfügbare
Adresse gerade angefordert wird, und blockiert weitere
Bereitstell-Anforderungen.
Die Puffertreiber 2518 werden aktiviert, um das Signal
PFPPCR durch PFPREQFETCH auf den MEMIN-Bus 320 zu bringen.
PFPREQFETCH wird durch PFP 312 erzeugt, wenn, wie oben
beschrieben, PFP 312 einen Zugriff zum Speicher 311 angefordert
und diesen erhalten hat. PFPREQFETCH bewirkt auch,
daß die Pufferspeicher 2518 das Signal erzeugen.
ist mit dem Signal von der
CPU 314 durch eine verdrahtete ODER-Schaltung verknüpft,
um das Signal an den Speicher 311 zu liefern.
In ähnlicher Weise erzeugen die Puffertreiber 2518 das
Signal für die Steuerschaltung des PFP 312, um anzuzeigen,
daß eine PFP-Anforderung veranlaßt worden ist.
Wie unten näher beschrieben wird, wird mit
MEMSORRY verglichen, um einen PFP 312-Abruf zu verschieben,
falls eine Störung der Speicheranforderung
auftritt.
In Fig. 4A enthält die WCB-Logik 338 Komparatoren
2524 und ein Verknüpfungsglied 2526. Die Komparatoren
2524 vergleichen die echten Adreßbits PFPPCR 0 bis 7
und 16 bis 19 mit den entsprechenden Adreßbits MEMIN
0 bis 7 und 16 bis 19 des MEMIN-Bus 320. Die Komparatoren
2524 werden über das Verknüpfungsglied 2526
aktiviert durch das gleichzeitige Auftreten von
und beim Speicher 311. erscheint nur,
wenn irgendein anderes Element des Rechners 310 als
PFP 312, z. B. die CPU 314, in den Speicher 311 schreibt.
Die Komparatoren 2524 erzeugen WRITECURRBLK, falls der
Vergleich von PFPPCR und MEMIN anzeigt, daß ein Schreiben
in dem Block von Adressen stattgefunden hat, der augenblicklich
für den PFP 312 zugänglich ist.
In Fig. 5 und 5A sind das CPUPC-Register 364, das
PFPPCF-Register 332 und der PFP-Speicher 330 gezeigt.
In Fig. 5 weist das CPU-PC-Register 364 Zähler 2610 und
2612 und einen Puffertreiber 2614 auf. Den Dateneingängen
der Zähler 2610 und 2612 werden die niedrigwertigen logischen
Adreßbits ALUOUT 9 bis 15 vom ALUOUT-Bus 326
zugeführt. ALUOUT 9 bis 15 entsprechen den sieben variablen
Adreßbits PFPPCR 9 bis 15 als Dateneingangssignale. Ein
achter Datenbiteingang der Zähler 2610 und 2612 ist mit
logisch 0 (Masse) verbunden und entspricht dem Signal
ALUOUT 8 und PFPPCR 8. ALUOUT 9 bis 15 und das achte Bit
mit dem Wert logisch 0 werden in die Zähler 2610 und 2612
durch das die parallele Eingabe aktivierende Eingangssignal
und das Takteingangssignal MEMCLK geladen.
CPUPC erscheint an den Ausgängen der Zähler 2610 und
2612 als CPUPC 8 bis 15 und wird durch MEMCLK inkrementiert,
wenn das Zählaktivierungseingangssignal INCPC
aktiv ist. INCPC aktiviert die Zähler 2610 und 2612,
während Befehle durch die ALU 356 ausgeführt werden.
Das Löscheingangssignal wird wiederum geliefert,
um CPUPC 8 bis 15 auf 0 zurückzusetzen.
CPUPC 8 bis 15 werden Eingängen der invertierenden Pufferverstärker
2614 zugeführt. Die Pufferverstärker 2614 werden
aktiviert, um das invertierte CPUPC auf den ALUIN-Bus 324
zu bringen.
Wie anhand der Fig. 5A beschrieben werden wird, wird
CPUPC-Leseadresseneingängen des PFP-Speichers 330 und
Eingängen von PFPRDY 334 zugeführt.
In Fig. 5A ist der PFP-Speicher 330 gezeigt. Der PFP-Speicher
330 weist Speicher mit wahlfreiem Zugriff (RAM)
2618, 2620, 2622 und 2624 auf. Die RAMs 2618 bis 2624
mögen jeweils ein Speicher mit 16 Worten und 4 Bit Länge
sein, die parallel erfaßt werden, so daß der PFP-Speicher
330 einen 16-Wort-Speicher mit 16 Bit Länge bilden mag.
Wie oben festgestellt, kann der PFP-Speicher 330 eine
andere Kapazität haben als 16 Wörter mit 16 Bit Länge.
CPUPC 12 bis 15 vom CPUPC-Register 364 werden Leseadresseneingängen
der RAMs 2618 bis 2624 zugeführt. PFPPCF 12 bis
15 vom PFPPCF-Register 332 werden Schreibadresseneingängen
der RAMs 2618 bis 2624 zugeführt. Die Dateneingänge der
RAMs 2618 bis 2624 sind mit dem MEMOUT-Bus 318 (MEMOUT
0 bis 19) verbunden. MEMOUT 0 bis MEMOUT 3 sind mit Dateneingängen
des RAM 2618 verbunden, und MEMOUT 4 bis MEMOUT 7
sind Dateneingängen des RAM 2620 zugeführt. MEMOUT 8 bis
MEMOUT 11 sind Dateneingängen des RAM 2622 zugeführt, und
MEMOUT 12 bis MEMOUT 15 sind Dateneingängen des RAM 2624 zugeführt.
MEMOUT 15 bis 19 sind, wie früher besprochen,
Fehlerkorrekturbits, die durch die ERCC-Logik 319 verwendet
werden, und werden nicht im PFP-Speicher 330 gespeichert.
Die Ausgangsdaten PFP 0 bis PFP 15 der RAMs
2618 bis 2624 werden dem PFP-Bus 322 zugeführt. Die Befehle
auf dem MEMOUT-Bus 318 werden in den PFP-Speicher
330 eingeschrieben, wenn die RAMs 2618 bis 2624 gleichzeitige
Schreibaktiviereingangssignale MEMCLK und
empfangen. Gespeicherte Befehle werden aus dem
PFP-Speicher 330 ausgelesen, wenn die RAMs 2618 bis
2624 Ausgabeaktiviereingangssignale empfangen.
Dies würde die normale Bedingung sein.
In den Fig. 6 und 6A sind PFPRDY 334 und die Steuerschaltung
des PFP 312 gezeigt. In Fig. 6 weist der PFPRDY
334 einen programmierbaren Lesespeicher (PROM) 2710,
ein Flip-Flop 2712 und Verknüpfungsglieder 2714, 2715
und 2716 auf. Der PROM 2710 wirkt als ein Komparator für
die Leseadressen (CPUPC) und Schreibadressen (PFPPCF)
für den PFP-Speicher 330. Der PROM 2710 liefert ein Ausgangssignal
, das anzeigt, daß der PFP-Speicher 330
voll ist; ein Signal , das anzeigt, daß mehr als ein
Befehl für die CPU 314 verfügbar ist; ein Signal CTEQ 1,
das anzeigt, daß der PFP-Speicher 330 nur einen Befehl vor
dem augenblicklich in Ausführung durch die CPU 314 befindlichen
Befehl enthält; und ein Signal CTEQ 0, das anzeigt,
daß der PFP-Speicher 330 keine Befehle enthält.
CTEQ 1 und werden Eingängen des Verknüpfungsglieds
2714 zugeführt, das ein Ausgangssignal liefert, daß der
PFP-Speicher 330 nur einen Befehl enthält. Das weiter
unten besprochene Signal ist ein Signal, das anzeigt, ob die CPU 314 dabei ist, einen Befehl aus dem
PFP-Speicher 330 zu lesen. Das Ausgangssignal des Verknüpfungsglieds
2714 ist mit einer verdrahteten ODER-Funktion
mit CTGT 1 und dem Ausgangssignal des Verknüpfungsglieds
2713 verknüpft. CTGT 1 stellt dar, daß mehr
als ein Befehl im PFP-Speicher 330 verfügbar ist. Das
Eingangssignal des Verknüpfungsglieds 2713 zeigt
an, daß der PFP 312 zur Zeit einen Befehl vom Speicher 311
in den PFP-Speicher 330 überträgt. Das Ausgangssignal
des Verknüpfungsglieds 2713 zeigt dadurch an, daß der
PFP 312 zur Zeit keinen Befehl für die CPU 314 hat, aber
daß ein Befehl am Ende des laufenden MEMCLK-Zyklus verfügbar
sein wird. Das Ausgangssignal eines Verknüpfungsglieds
2713 wird dann durch das Verknüpfungsglied 2715 mit
durch eine UND-Funktion verknüpft, um das Ausgangssignal
des Verknüpfungsglieds 2715 zu liefern. Das durch eine
ODER-Funktion verknüpfte Ausgangssignal des Verknüpfungsglieds
2714 wird einem Eingang des Verknüpfungsglieds
2716 zugeführt, dies gilt auch für WCBF (Schreiben Laufender
Block Fehler, Write Current Block Fault, wird unten
erläutert). Das Ausgangssignal des Verknüpfungsglieds
2716 zeigt an, ob PFP 312 nicht in der Lage sein
wird, Befehle an die CPU 314 zu liefern; entweder weil Befehle
nicht verfügbar sind oder weil ein möglicher Konflikt
zwischen Befehlen besteht, die in den Speichern 313
und 311 gespeichert sind. wird am Dateneingang
des Flip-Flops 2712 zugeführt. Das Takteingangssignal
NANOCLK des Flip-Flops 2712, das unten beschrieben wird,
tastet ab, um das Ausgangssignal PFPREADY zu
erzeugen. PFPREADY zeigt an, ob PFP 312 bereit ist, Befehle
an die CPU 314 zu liefern.
Die Steuerschaltung PFP 312 wird nun beschrieben. In Fig. 6A
wird zunächst die Schaltung beschrieben, die die obengenannten
Signale INCPC, WCBF und NANOCLK erzeugt.
wird durch Verknüpfungsglieder 2718 bis 2724 und
zugeordnete Inverter 2726 erzeugt. Wie oben festgestellt,
tritt auf, wenn ein Befehl aus dem PFP-Speicher 330
gelesen werden soll. Insbesondere zeigt INCPC an, daß
CPUPC durch das zum CPUPC-Register 364 geleitete Signal
MEMCLK inkrementiert werden soll, beispielsweise bei
einem Skipbefehl (Überspringen).
Eingangssignale , und SAGEUPDATEPC des
Verknüpfungsglieds 2718 zeigen an, daß CPUPC inkrementiert
werden muß. Dies sind Eingangssignale von einer fest verdrahteten
Logik, die Mikrobefehlbedingungen detektiert,
die es erfordern, daß CPUPC inkrementiert wird. Das Ausgangssignal
des Verknüpfungsglieds 2718 und
werden Eingängen des Verknüpfungsglieds 2720 zugeführt.
zeigt an, daß ein laufender Mikrobefehl gerade
endet und daß ein neuer Mikrobefehl beginnen muß.
Ein Eingangssignal des Verknüpfungsglieds 2722
zeigt an, das CPUPC wegen eines ALC-Skipbefehls
zwingend inkrementiert werden muß. Das Eingangssignal
μSEQTEST des Verknüpfungsglieds 2722 von der Mikrobefehl-Logik
342 repräsentiert eine Mikrobefehl-Prüfbedingung,
die anzeigt, ob ein ALC-Skipbefehl wahr ist. Das Eingangssignal
NANOCLK des Verknüpfungsglieds 2722 ist ein Sperrsignal
für PFP 312, das unten beschrieben wird.
Schließlich sind die Ausgänge der Verknüpfungsglieder
2720 und 2722 durch das Verknüpfungsglied 2724 mit einer
ODER-Funktion verknüpft, das das Ausgangssignal INCPC
liefert. Inverter 2725 und 2726 invertieren die Ausgangssignale
der Verknüpfungsglieder 2724 und 2718, um Signale
mit der gewünschten Polarität an die Verknüpfungsglieder
2720 und 2714 zu liefern.
WCBF wird durch ein Flip-Flop 2728 erzeugt. Das J-Eingangssignal
WRITE CURRBLK des Flip-Flops 2728, das oben beschrieben
wurde, zeigt an, daß ein Schreibzyklus in dem Befehlsblock
im Speicher 311 aufgetreten ist, der gerade durch
den PFP 312 zugänglich ist. Das ebenfalls früher besprochene
Signal PCDESTENB zeigt an, daß eine neue echte
Adresse in das PFPPCR-Register 336 geladen werden muß,
um einen neuen Block von Befehlen dem PFP 312 zuzuordnen.
Das Takteingangssignal des Flip-Flops 2728 tastet
WRITECURRBLK und PCDESTENB ab. Dadurch zeigt WCBF nach
einem Signal WRITECURRBLK an, daß eine mögliche Befehlsstörung
vorhanden ist, und nach einem Signal PCDSTENB, daß
die Störung durch einen Neubeginn der Abrufoperation des
PFP 312 gelöst worden ist. Die Setz- und Löscheingangssignale
und des Flip-Flops 2728 können
das Flip-Flip 2728 löschen oder setzen, wodurch WCBF erzeugt
wird.
Die NANOCLK und MEMCLK erzeugende Schaltung wird als Teil
der CPU 314 betrachtet, wird aber hier beschrieben, um das
Verständnis des PFP 312 zu unterstützen. NANOCLK wird durch
ein Flip-Flop 2730 und ein Verknüpfungsglied 2732 aus
MEMCLK erzeugt. Das Ausgangssignal NANOCLK des Flip-Flop
2730 wird dem Dateneingang des Flip-Flop 2730 durch das
Verknüpfungsglied 2732 zugeführt, das NANOCLK invertiert.
Dadurch wird das invertierte NANOCLK durch MEMCLK abgetastet,
so daß NANOCLK mit der halben Frequenz von MEMCLK
auftritt. Das Eingangssignal HSCREQ des Verknüpfungsglieds
2732 blockiert den Dateneingang des Flip-Flop 2730, und
somit NANOCLK und die Arbeit von PFP 312, wenn ein Gerät
mit einem Hochgeschwindigkeitskanal den Zugriff zum Speicher
311 belegt hat. Ein Gerät mit einem Hochgeschwindigkeitskanal,
das in Fig. 3 aus Gründen der Klarheit der
Darstellung nicht gezeigt ist, ist direkt mit dem MEMIN-Bus
320 und dem MEMOUT-Bus 318 in Verbindung, um schnell
Daten direkt in den Speicher 311 und aus ihm heraus zu
übertragen. Dem Setz- und Löscheingang des Flip-Flops
2730 werden die Signale und
zugeführt, wodurch es ermöglicht wird, daß diese Eingangssignale
die Signale NANOCLK und den PFP 312 aktivieren
oder blockieren.
Als nächstes wird die das Signal MEMCLK erzeugende Schaltung
diskutiert, gefolgt von der Schaltung, die die Abrufoperation
des PFP 312 veranlaßt. Am Ende wird die die
Verbindung des PFP 312 mit dem MEMIN-Bus 320 und dem
MEMOUT-Bus 380 enthaltende Schaltung beschrieben, wiederum
unter Bezugnahme auf Fig. 6.
In Fig. 6A wird MEMCLK durch ein Flip-Flop 2734, einen
Inverter 2736, und Verknüpfungsglieder 2738-2742 erzeugt.
20CLK wird dem K-Eingang des Flip-Flops 2734 zugeführt,
und 40CLK wird dem Takteingang des Flip-Flops 2734
zugeführt. Das Signal 40CLK tastet das Signal 20CLK ab,
so daß die Ausgänge Q und des Flip-Flops 2734 die
Signale MEMCLK und liefern. Das Verknüpfungsglied
2742 ist ein Pufferverstärker, der benutzt wird,
um die Belastung des Ausgangssignals MEMCLK des Flip-Flops
2734 zu verringern.
Das dem J-Eingang des Flip-Flops 2734 vom Verknüpfungsglied
2740 zugeführte Signal MEMCLKENB ist ein Aktivierungseingangssignal,
das MEMCLK und somit den PFP 312
blockiert. Eingangssignale des Verknüpfungsglieds 2740
sind , und SORRY vom Ausgang des Verknüpfungsglieds
2738. ist früher unter Bezugnahme
auf den PFP-Speicher 310 beschrieben worden.
wird verwendet, um MEMCLK mit 40CLK zu synchronisieren.
Das Eingangssignal PRFREQ des Inverters 2736 wird,
wie früher erläutert, erzeugt, wenn es dem PFP 312 gestattet
ist, eine Leseanfrage an den Speicher 311 zu erzeugen.
Wie mit Bezugnahme auf den Speicher 311 beschrieben,
wird dann, falls eine Anfrage des PFP 312 zu einer
Speicheranfragenstörung führt, der Speicher 311 durch
Lieferung von antworten. Die Eingangssignale
und des Verknüpfungsglieds 2738 erzeugen
das Ausgangssignal SORRY, das anzeigt, daß eine
Leseanfrage des PFP 312 zu einer Speicherstörungsbedingung
geführt hat. SORRY blockiert dann die Erzeugung
von MEMCLK, um die Tätigkeit des PFP zu blockieren, bis
anzeigt, daß die Anfragestörung bereinigt ist.
Wie oben diskutiert, wird dann der PFP 312 fortfahren,
die früher störende Speicheranfrage zu wiederholen. Dem
Setz- und Löscheingang des Flip-Flops 2734 sind die
Signal und zugeführt. Diese Eingangssignale
gestatten es, daß MEMCLK ausgesetzt wird, und sie
werden verwendet, um die Startbedingung von MEMCLK zu
setzen.
In den Fig. 6 und 6A werden die Bereitstellzyklen des
PFP 312 durch das Ausgangssignal PPFREQFETCH eines Flip-Flops
2744 veranlaßt, das anzeigt, daß ein Abruf veranlaßt
worden ist.
Wie oben diskutiert, wird der PFP 312 zur Durchführung
von Bereitstelloperationen aktiviert, wenn ein Gerät mit
höherer Priorität, z. B. die CPU 314, keinen Zugriff zum
Speicher 311 verlangt. Dem Dateneingang des Flip-Flops
2744 wird ein Aktivierungssignal vom Ausgang eines Verknüpfungsglieds
2746 zugeführt, so daß das Ausgangssignal
des Verknüpfungsglieds 2746 durch das Takteingangssignal
MEMCLK abgetastet wird. Das Verknüpfungsglied 2746
hat vier Sperrsignaleingänge. wird durch
einen Inverter 2748 von einem Verknüpfungsglied 2750 und
2752 geliefert. Dem Verknüpfungsglied 2752 werden Eingangssignale
PFPCT2 und PFPREQFETCH zugeführt. PFPCTC2
vom PFPPCR-Register 336 zeigt an, daß PFPPCR nicht weiter
als eine Adresse vom Blockende der zur Zeit für den
PFP 312 verfügbaren Befehle entfernt ist. PFPREQFETCH
vom Ausgang des Flip-Flops 2744 zeigt an, daß ein Abruf
veranlaßt worden ist. Das Ausgangssignal des Verknüpfungsglieds
2752 blockiert dadurch die Veranlassung
einer nachfolgenden PFP 312-Anforderung, während der
zuletzt zugängliche Befehl gerade abgerufen wird.
und sind Eingangssignale der Verknüpfungsglieder
2750. vom PFPPCR-Register 336 zeigt an, daß
der PFP 312 den letzten verfügbaren Befehl abgerufen
hat. Das Ausgangssignal DONECURRBLK des Verknüpfungsglieds
2750 und des Inverters 2748 hindert dadurch den
PFP 312 daran, Befehle außerhalb des gerade verfügbaren
Befehlsblocks abzurufen.
Das Eingangssignal des Verknüpfungsglieds 2746 vom
PROM 2710 im PFPRDY 334 zeigt an, daß der PFP-Speicher
330 voll ist. blockiert die Erzeugung von Abrufanforderungen
durch den PFP 312, bis die CPU 314 weitere
Befehle vom PFP-Speicher 330 anfordert und mindestens
eine Adressenstelle des PFP-Speichers 330 für die Annahme
weiterer Befehle freimacht.
Das dem Verknüpfungsglied 2746 vom Verknüpfungsglied 2758
zugeführte Eingangssignal ist auch ein Sperrsignal. Das
Eingangssignal HSCREQ des Verknüpfungsglieds 2758, das
oben diskutiert wurde, zeigt an, daß ein Gerät mit einem
Hochgeschwindigkeitskanal einen Prioritätszugriff zum Speicher
311 beansprucht. Der PFP 312 wird daran gehindert,
einen Zugriff zum Speicher 311 anzufordern, bis HSCREQ
beendet ist. CONSOLEMODE zeigt an, wie unten mit Bezug
auf das Soft-Konsole-ROM 358 diskutiert wird, daß der
Rechner 310 im Konsolen-Betriebszustand arbeitet. Im
Konsolen-Betriebszustand wird die gesamte normale Operation
des Rechners 310 ausgesetzt, einschließlich dem Bereitstellen;
der Rechner 310 wird dann durch einen externen
Fernschreiber gesteuert, der durch die Soft-Konsole 358
arbeitet.
Das Eingangssignal CRF des Verknüpfungsglieds 2746 vom
Verknüpfungsglied 2754 ist ein Aktivierungssignal, das
anzeigt, daß es dem PFP 312 gestattet ist, Bereitstelloperationen
auszuführen. Das Eingangssignal des
Verknüpfungsglieds 2754 von der Mikrobefehl-Logik 342
zeigt an, daß es dem PFP 312 gestattet ist, während eines
Mikrobefehls, der bestätigt, abzurufen.
ist ein fest verdrahtetes Signal, das anzeigt, daß es dem
PFP 312 gestattet ist, während der Ausführung eines Befehls
der arithmetischen und logischen Klasse (ALC) abzurufen.
Das Eingangssignal eines Verknüpfungsglieds 2754
von einem Verknüpfungsglied 2756 ist ähnlich
und zeigt an, daß es dem PFP 312 gestattet ist, während
eines ALC-Befehls abzurufen. Das Eingangssignal INSTSAGEALC
des Verknüpfungsglieds 2756 zeigt an, daß ein ALC-Befehl
gerade auftritt, während dem es dem PFP 312 erlaubt sein
kann, abzurufen. Das Eingangssignal μSEOTEST des Verknüpfungsglieds
2756 von der Mikrobefehl-Logik 342 ist
eine Prüfbedienung, die anzeigt, ob der PFP 312 während
dieses ALC-Befehls abrufen darf. Das CRF-Ausgangssignal
des Verknüpfungsglieds 2754 zeigt dabei an, daß der
PFP 312 eine Bereitstellung während eines Mikrobefehls
oder eines ALC-Befehls ausführen darf.
Dabei erzeugt das Flip-Flop 2744 PFPREQFETCH, wenn es
durch CRF aktiviert ist und nicht durch DENECURRBLK,
FULL, CONSOLEMODE, oder HSCREQ blockiert ist. Wie oben
festgestellt, aktiviert dann PFPREQFETCH den PFP 312 zur
Ausführung einer Bereitstelloperation.
Schließlich ist in Fig. 6 die Schaltung gezeigt, die die
Verbindung des PFP 312 mit dem MEMIN-Bus 320 und dem
MEMOUT-Bus 318 aufweist. Die Verbindungsschaltung oder
Interfaceschaltung des PFP 312 weist ein Schieberegister
2760, ein Verknüpfungsglied 2762 und einen Inverter 2764
auf. Das Eingangssignal PFPREQFETCH des Verknüpfungsglieds
2762 zeigt, wie diskutiert, an, daß der PFP 312
zum Ausführen eines Bereitstellzyklus aktiviert ist.
PFPREQFETCH überträgt die echte Adresse PFPPCR auf den
MEMIN-Bus 320 und erzeugt MEMSTARTPFP und .
wird mit verglichen, um zu bestimmen,
ob eine Anforderungsstörung aufgetreten ist.
wird auch einem anderen Eingang des Verknüpfungsglieds
2762 zugeführt, um das Ausgangssignal FETCHSTARTED des
Verknüpfungsglieds 2762 zu blockieren, falls eine Speicheranforderungsstörung
auftritt. Wenn keine Störung auftritt,
erzeugt das Verknüpfungsglied 2762 FETCHSTARTED,
das anzeigt, daß ein Abruf angefordert wurde und vom
Speicher 311 angenommen wurde. FETCHSTARTED liefert eine
logische 1 an den Dateneingang des Schieberegisters 2760.
Die logische 1 wird dann durch MEMCLK durch das Register
2760 geschoben. FETCHSTARTED wird dadurch im Ausgangssignal
LOADINST des Schieberegisters 2760 vier MEMCLK-Perioden
(das sind 400 Nanosekunden), nachdem der Abruf
veranlaßt worden ist, erscheinen. Wie oben diskutiert,
ist dann der angeforderte Befehl auf dem MEMOUT-Bus 318
verfügbar, und überträgt den Befehl in den
PFP-Speicher 330.
Claims (1)
- Digitaldaten-Bussystem zur Verwendung bei einem digitalen Rechnersystem mit einem Prozessor (214, 314) und einem Speicher (211, 311) zum Speichern von Befehlen für den Prozessor,
wobei das Digitaldaten-Bussystem
einen Speichereingangsbus (220, 320), der in einen Weg vom Prozessor (214, 314) zum Speicher (211, 311) eingeschaltet ist, um Speichereingangssignale zum Speicher (211, 311) zu leiten, und
einen Speicherausgangsbus (218, 318), der in einen Weg vom Speicher (211, 311) zum Prozessor (214, 314) eingeschaltet ist, um die Daten zum Prozessor (214, 314) zu leiten, aufweist, und
wobei der Speicher (211, 311) zur Ausführung von Speicheroperationen jeweils innerhalb eines vorbestimmten Zeitintervalles nach Eintreffen eines eine Speicheroperation veranlassenden Speichereingangssignals ausgebildet ist,
dadurch gekennzeichnet, daß ein Prozessor-Speicherbus-Interface (212, 312) vorgesehen ist, das aufweist:
eine im wesentlichen vom Prozessor (214, 314) unabhängig arbeitende Einrichtung (336) zum Erzeugen von bestimmten Signalen auf dem Speichereingangsbus (220, 320), die die gespeicherten Befehle vom Speicher (311) anfordern,
eine Zeitgebereinrichtung (2734, 2738, 2740, 2742, 2760, 2762; Fig. 6, 6A), die auf die Tätigkeit der Einrichtung (336) zum Erzeugen der Signale anspricht, um das vorbestimmte Zeitintervall zu messen, und
eine Speicherungseinrichtung (330), die mit dem Speicherausgangsbus (218, 318) verbunden ist und auf die Tätigkeit der Zeitgebereinrichtung (2734, 2738, 2740, 2742, 2760, 2762; Fig. 6, 6A) derart anspricht, daß sie innerhalb des vorbestimmten Zeitintervalls die vom Speicher (211, 311) ausgegebenen Befehle empfängt und speichert.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/959,038 US4316244A (en) | 1978-11-08 | 1978-11-08 | Memory apparatus for digital computer system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2953861A1 DE2953861A1 (de) | 1982-09-16 |
DE2953861C2 true DE2953861C2 (de) | 1989-01-26 |
Family
ID=25501594
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792944419 Granted DE2944419A1 (de) | 1978-11-08 | 1979-11-03 | Digitalrechnersystem |
DE2953861A Expired DE2953861C2 (de) | 1978-11-08 | 1979-11-03 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792944419 Granted DE2944419A1 (de) | 1978-11-08 | 1979-11-03 | Digitalrechnersystem |
Country Status (8)
Country | Link |
---|---|
US (1) | US4316244A (de) |
JP (1) | JPS55102050A (de) |
AU (1) | AU532100B2 (de) |
CA (1) | CA1134051A (de) |
DE (2) | DE2944419A1 (de) |
FR (1) | FR2443099B1 (de) |
GB (1) | GB2034944B (de) |
NL (1) | NL7907768A (de) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56152049A (en) * | 1980-04-25 | 1981-11-25 | Toshiba Corp | Microprogram control system |
US4467417A (en) * | 1981-09-16 | 1984-08-21 | Honeywell Information Systems Inc. | Flexible logic transfer and instruction decoding system |
WO1985000453A1 (en) * | 1983-07-11 | 1985-01-31 | Prime Computer, Inc. | Data processing system |
US4622630A (en) * | 1983-10-28 | 1986-11-11 | Data General Corporation | Data processing system having unique bus control protocol |
US4764896A (en) * | 1985-07-01 | 1988-08-16 | Honeywell Inc. | Microprocessor assisted memory to memory move apparatus |
US5179716A (en) * | 1986-07-02 | 1993-01-12 | Advanced Micro Devices, Inc. | Programmable expandable controller with flexible I/O |
EP0261628B1 (de) * | 1986-09-26 | 1991-05-02 | Siemens Aktiengesellschaft | Vorausladeeinrichtung zum mikroprogrammierten und verdeckten Bereitstellen von Maschinenbefehlen in einem Prozessor |
US4980850A (en) * | 1987-05-14 | 1990-12-25 | Digital Equipment Corporation | Automatic sizing memory system with multiplexed configuration signals at memory modules |
EP0338317B1 (de) * | 1988-04-20 | 1996-01-10 | Sanyo Electric Co., Ltd. | In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas |
CA2011518C (en) * | 1989-04-25 | 1993-04-20 | Ronald N. Fortino | Distributed cache dram chip and control method |
US5325517A (en) * | 1989-05-17 | 1994-06-28 | International Business Machines Corporation | Fault tolerant data processing system |
US5144692A (en) * | 1989-05-17 | 1992-09-01 | International Business Machines Corporation | System for controlling access by first system to portion of main memory dedicated exclusively to second system to facilitate input/output processing via first system |
US5113522A (en) * | 1989-05-17 | 1992-05-12 | International Business Machines Corporation | Data processing system with system resource management for itself and for an associated alien processor |
US5155809A (en) * | 1989-05-17 | 1992-10-13 | International Business Machines Corp. | Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware |
US5283868A (en) * | 1989-05-17 | 1994-02-01 | International Business Machines Corp. | Providing additional system characteristics to a data processing system through operations of an application program, transparently to the operating system |
US5369767A (en) * | 1989-05-17 | 1994-11-29 | International Business Machines Corp. | Servicing interrupt requests in a data processing system without using the services of an operating system |
US5369749A (en) * | 1989-05-17 | 1994-11-29 | Ibm Corporation | Method and apparatus for the direct transfer of information between application programs running on distinct processors without utilizing the services of one or both operating systems |
AU644141B2 (en) * | 1990-01-05 | 1993-12-02 | Maspar Computer Corporation | A method of controlling a router circuit |
CA2073185A1 (en) * | 1990-01-05 | 1991-07-06 | Won S. Kim | Parallel processor memory system |
US5313590A (en) * | 1990-01-05 | 1994-05-17 | Maspar Computer Corporation | System having fixedly priorized and grouped by positions I/O lines for interconnecting router elements in plurality of stages within parrallel computer |
US5280474A (en) * | 1990-01-05 | 1994-01-18 | Maspar Computer Corporation | Scalable processor to processor and processor-to-I/O interconnection network and method for parallel processing arrays |
US5301299A (en) * | 1990-06-07 | 1994-04-05 | Intel Corporation | Optimized write protocol for memory accesses utilizing row and column strobes |
KR100295074B1 (ko) * | 1992-12-22 | 2001-09-17 | 리패치 | 응용주문형집적회로인에러정정코드메모리제어기 |
WO2000043883A1 (fr) * | 1999-01-25 | 2000-07-27 | Mitsubishi Denki Kabushiki Kaisha | Unite peripherique de controleur programmable |
EP1643658A1 (de) | 2004-10-04 | 2006-04-05 | Sony Deutschland GmbH | Netzleitungsübertragungsverfahren |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1935390U (de) | 1965-12-06 | 1966-03-24 | Huelsta Moebelwerk Alois Huels | Scharnier fuer moebeltueren. |
US3764988A (en) * | 1971-03-01 | 1973-10-09 | Hitachi Ltd | Instruction processing device using advanced control system |
US3736566A (en) * | 1971-08-18 | 1973-05-29 | Ibm | Central processing unit with hardware controlled checkpoint and retry facilities |
FR2226079A5 (de) * | 1973-04-13 | 1974-11-08 | Honeywell Bull Soc Ind | |
US3810110A (en) * | 1973-05-01 | 1974-05-07 | Digital Equipment Corp | Computer system overlap of memory operation |
US3900836A (en) * | 1973-11-30 | 1975-08-19 | Ibm | Interleaved memory control signal handling apparatus using pipelining techniques |
JPS50128948A (de) * | 1974-03-29 | 1975-10-11 | ||
US4048623A (en) * | 1974-09-25 | 1977-09-13 | Data General Corporation | Data processing system |
US4024508A (en) * | 1975-06-19 | 1977-05-17 | Honeywell Information Systems, Inc. | Database instruction find serial |
DE2537787A1 (de) | 1975-08-25 | 1977-03-03 | Computer Ges Konstanz | Modularer arbeitsspeicher fuer eine datenverarbeitungsanlage und verfahren zum durchfuehren von speicherzugriffen an diesem speicher |
US4045781A (en) * | 1976-02-13 | 1977-08-30 | Digital Equipment Corporation | Memory module with selectable byte addressing for digital data processing system |
US4156925A (en) * | 1976-04-30 | 1979-05-29 | International Business Machines Corporation | Overlapped and interleaved control store with address modifiers |
US4095265A (en) * | 1976-06-07 | 1978-06-13 | International Business Machines Corporation | Memory control structure for a pipelined mini-processor system |
US4079455A (en) * | 1976-12-13 | 1978-03-14 | Rca Corporation | Microprocessor architecture |
DE2704560C2 (de) * | 1977-02-03 | 1979-01-18 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Datenverarbeitende Anlage mit paralleler Bereitstellung und Ausführung von Maschinenbefehlen |
US4122359A (en) * | 1977-04-27 | 1978-10-24 | Honeywell Inc. | Memory protection arrangement |
US4130899A (en) * | 1977-11-25 | 1978-12-19 | Ncr Corporation | System for operating volatile memory in normal and standby modes |
US4189767A (en) * | 1978-06-05 | 1980-02-19 | Bell Telephone Laboratories, Incorporated | Accessing arrangement for interleaved modular memories |
-
1978
- 1978-11-08 US US05/959,038 patent/US4316244A/en not_active Expired - Lifetime
-
1979
- 1979-10-12 GB GB7935593A patent/GB2034944B/en not_active Expired
- 1979-10-22 NL NL7907768A patent/NL7907768A/nl not_active Application Discontinuation
- 1979-10-26 AU AU52228/79A patent/AU532100B2/en not_active Ceased
- 1979-11-03 DE DE19792944419 patent/DE2944419A1/de active Granted
- 1979-11-03 DE DE2953861A patent/DE2953861C2/de not_active Expired
- 1979-11-05 CA CA339,190A patent/CA1134051A/en not_active Expired
- 1979-11-06 FR FR7928008A patent/FR2443099B1/fr not_active Expired
- 1979-11-07 JP JP14342279A patent/JPS55102050A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
US4316244A (en) | 1982-02-16 |
GB2034944B (en) | 1982-12-22 |
CA1134051A (en) | 1982-10-19 |
DE2944419C2 (de) | 1988-08-18 |
FR2443099A1 (fr) | 1980-06-27 |
JPS55102050A (en) | 1980-08-04 |
FR2443099B1 (fr) | 1988-03-25 |
GB2034944A (en) | 1980-06-11 |
AU532100B2 (en) | 1983-09-15 |
DE2944419A1 (de) | 1980-05-14 |
DE2953861A1 (de) | 1982-09-16 |
AU5222879A (en) | 1980-05-15 |
NL7907768A (nl) | 1980-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2953861C2 (de) | ||
DE1774296C2 (de) | Restruktuierbare Steuereinheit für elektronische Digitalrechner | |
DE3424962C2 (de) | ||
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
EP0006164B1 (de) | Multiprozessorsystem mit gemeinsam benutzbaren Speichern | |
DE2635592A1 (de) | Multiprozessor-abrufsystem | |
CH619309A5 (de) | ||
DE2162806A1 (de) | Digitales Eingabe-Ausgabe-Steuersystem mit Kanalpufferung | |
DE3303488A1 (de) | Digitales signalverarbeitungssystem | |
DE2719635A1 (de) | Anordnung fuer eine erweiterung einer mikroprogrammsteuerung einer datenverarbeitungsanlage | |
DE1966633B2 (de) | Datenverarbeitungsanlage mit überlappter Arbeitswelse bei Verwendung eines Haupt- und Pufferspeichers | |
DE1915818B2 (de) | Steuerschaltung für ein elektronisches Datenverarbeitungssystem | |
DE2755616A1 (de) | Asymmetrischer multiprozessor | |
DE2945168A1 (de) | Motorsteuereinheit | |
DE2755611A1 (de) | Steuereinheit fuer datenverarbeitungsanlagen | |
DE2332971C2 (de) | Mikroprogrammsteuereinrichtung | |
DE2813080A1 (de) | Einrichtung zur speicheradressierung | |
DE2718551A1 (de) | Adressenumsetzvorrichtung in einer datenverarbeitungsvorrichtung | |
DE2625113C2 (de) | Speicherschutzeinrichtung | |
DE2533737A1 (de) | Datenprozessor | |
DE1499191B2 (de) | Elektronische einrichtung fuer eine datenverarbeitungsanlage | |
DE3314139C2 (de) | ||
DE2227761B2 (de) | Speichersystem | |
EP0409330B1 (de) | Schaltungsanordnung zum Steuern des Zugriffs auf einen Speicher | |
DE4114053A1 (de) | Computersystem mit cachespeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
Q172 | Divided out of (supplement): |
Ref country code: DE Ref document number: 2944419 |
|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: G06F 13/00 |
|
8126 | Change of the secondary classification |
Ipc: ENTFAELLT |
|
AC | Divided out of |
Ref country code: DE Ref document number: 2944419 Format of ref document f/p: P |
|
AC | Divided out of |
Ref country code: DE Ref document number: 2944419 Format of ref document f/p: P |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |