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
Application number
DE2953861A
Other languages
English (en)
Other versions
DE2953861A1 (de
Inventor
David 01748 Hopkinton Mass. Us Grondolski
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
Data General Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Data General Corp filed Critical Data General Corp
Publication of DE2953861A1 publication Critical patent/DE2953861A1/de
Application granted granted Critical
Publication of DE2953861C2 publication Critical patent/DE2953861C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3818Decoding for concurrent execution
    • G06F9/3822Parallel 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.
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)

  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.
DE2953861A 1978-11-08 1979-11-03 Expired DE2953861C2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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