DE3842517A1 - Pipeline-datenverarbeitungssystem - Google Patents

Pipeline-datenverarbeitungssystem

Info

Publication number
DE3842517A1
DE3842517A1 DE3842517A DE3842517A DE3842517A1 DE 3842517 A1 DE3842517 A1 DE 3842517A1 DE 3842517 A DE3842517 A DE 3842517A DE 3842517 A DE3842517 A DE 3842517A DE 3842517 A1 DE3842517 A1 DE 3842517A1
Authority
DE
Germany
Prior art keywords
data
signal
buffer memory
state
output
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.)
Ceased
Application number
DE3842517A
Other languages
English (en)
Inventor
Hidenori Inouchi
Haruo Yoda
Yozo Oouchi
Hiroshi Sakou
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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
Priority claimed from JP62320852A external-priority patent/JPH01161454A/ja
Priority claimed from JP62327148A external-priority patent/JP2723893B2/ja
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3842517A1 publication Critical patent/DE3842517A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • 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 or look ahead
    • G06F9/3824Operand accessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Description

Die Erfindung betrifft ein Pipeline-Datenverarbeitungssystem zum Verarbeiten von in einem separaten Speichergerät gespeicherten und eine vorgegebene Verarbeitungsfolge aufweisenden Daten im Data-drive-Betrieb.
Das in Fig. 12 veranschaulichte herkömmliche Pipeline-Datenverarbeitungssystem umfaßt Speichergeräte 1201, 1202 und einen Verarbeitungs-Geräteteil 1203. Beim Betrieb dieses Systems werden Datenadressen für die Speichergeräte konzentriert von einem zu dem Verarbeitungs-Geräteteil gehörenden Steuerteil nach der zentralisierten Neumann-Verarbeitungsweise verwaltet. Daher besteht eine Schwierigkeit darin, daß mit Zunahme der Menge an gleichzeitig parallel zu verarbeitenden Daten der Adressen-Verwaltungsmechanismus umfangreich wird, was in der Praxis die Unterbringung in Baugruppen erschwert. Eine Möglichkeit zur Lösung dieser Schwierigkeit ist in JP-A-61-2 01 338 und JP-A-61-2 02 227 angegeben. Bei diesem Stand der Technik erfolgt die Adressenverwaltung für das Speichergerät dadurch, daß eine Datenfolge, die einen als Adressen-Token bezeichneten Befehl enthält, auf eine Sammelleitung gegeben und an das Speichergerät gesendet wird. Um eine gleichzeitige Verarbeitung mehrerer Daten zu erreichen, ist in einem Verarbeitungsteil ferner ein Warteschlangenmechnismus zur vorübergehenden Speicherung der Daten vorgesehen.
Das in Fig. 12 gezeigte System nach dem Stand der Technik ist jedoch mit einer weiteren Schwierigkeit behaftet. Insbesondere kann dann, wenn die Datengeschwindigkeit einer Ein/Ausgabe-Sammelleitung 1204 für ein Peripheriegerät von der Verarbeitungsgeschwindigkeit der Ein/Ausgabe-Sammelleitungen 1205, 1206 für den Pipeline-Verarbeitungsteil abweicht, ein Speichergerät nicht gleichzeitig für zwei Zwecke, d. h. zur Ein/Ausgabe-Verarbeitung und zur Pipeline-Verarbeitung, benutzt werden. Das in den obigen japanischen Offenlegungsschriften dargelegte System gestattet es zwar, Schwierigkeiten bei der praktischen Unterbringung in Baugruppen zu vermeiden, wenn es erforderlich ist, mehrere Operandendaten gleichzeitig zu verarbeiten. Die Steuerung ist jedoch kompliziert, da die Speichergeräte ein Adressen-Token von einem Daten-Token unterschneiden müssen, und der Anteil der Periode, innerhalb der die Sammelleitung effektive Daten führt (Ausnutzungsfaktor der Sammelleitung), wird nicht verbessert.
Der Erfindung liegt die grundsätzliche Aufgabe zugrunde, die genannte Schwierigkeit zu lösen und ein Pipeline-Datenverarbeitungssystem hoher Leistungsfähigkeit anzugeben. Insbesondere besteht eine Aufgabe der Erfindung darin, ein zur Pipeline-Datenverarbeitung geeignetes Speichergerät zu vermitteln, das eine hohe Leistungsfähigkeit aufweist.
Die erfindungsgemäße Lösung dieser Aufgabe ist im Patentanspruch 1 gekennzeichnet.
Im einzelnen weist die vorliegende Erfindung folgende Eigenschaften auf.
Bei der Erfindung wird eine Technik angewandt, bei der mehrere Operandendaten unterschiedlichen Speichergeräten zugeordnet und darin gespeichert sowie in den Speichergeräten vorher bestimmte Adressen automatisch erzeugt werden. Da bei dieser Technik kein Verarbeitungsrechner (host computer) die Adressen in den Speichergeräten verwaltet, ist es nicht möglich, entsprechend Betriebstaktsignalen eines Prozessors gleichzeitig mehrere Operandendaten auszulesen und eine ordnungsgemäße Datenverarbeitung durchzuführen. Die Speichergeräte weisen daher eine Gruppe von mehreren Eingangsspeichergeräten, die die zu verarbeitenden Daten dem Prozessor zuführen, und eine weitere Gruppe von mehreren Ausgangsspeichergeräten auf, die das vom Prozessor bereitgestellte Ergebnis der verarbeitenden Daten speichern, wobei in jedem Speichergerät ein Pufferspeicher vorhanden ist, um einen Versatz in der Verarbeitungs-Zeitabfolge zwischen den Speichergeräten aufzufangen. Die beiden (ersten und zweiten) Signale, die in Abhängigkeit von der Menge der in dem Pufferspeicher enthaltenen Daten Speicherzustände (voll und leer) angeben, werden mit einem ersten Arbeitstaktsignal (MCLK) synchronisiert, das die grundlegende Zeitsteuerung des Datenverarbeitungssystems steuert, woraufhin die besagten ersten und zweiten Signale aus den Pufferspeichern einer verdrahteten ODER-Verknüpfung unterworfen und auf separaten Allgemeinsignal-Leitungen ausgegeben werden. Da der Zeitpunkt, zu dem Daten den Pufferspeicher durchlaufen, unbestimmt ist, überwacht eine Steuerplatte die obigen beiden Speicherzustände, so daß der Prozessor die aus den Speichergeräten ausgelesenen und von ihm zu verarbeitenden Daten erkennen kann. Werden die die beiden Speicherzustände angebenden Signale eingegeben, so erzeugt die Steuerplatte ein Markierungssignal, das den Zeitpunkt angibt, zu dem die zu verarbeitenden Daten dem Prozessor zugeführt werden. Andererseits führt der Prozessor die Datenverarbeitung gemäß dem Markierungssignal aus und verzögert dann das von dem jeweils vorhergehenden Prozessor eingegebene Markierungssignal beispielsweise über eine Verzögerungsstufe um eine Verarbeitungszeitspanne, um die Ausgabe der beiden verarbeiteten Daten und des Markierungssignals in Synchronisation zu halten, woraufhin die verarbeitenden Daten und das verzögerte Markierungssignal an den nachfolgenden Prozessor ausgegeben werden. Ferner sind der oder die zum Schreiben der verarbeiteten Daten bestimmten Ausgangsspeichergeräte so ausgelegt, daß sie die verarbeiteten Daten entsprechend dem vom Prozessor ausgegebenen Markierungssignal in ihren internen Pufferspeicher einschreiben.
Fällt die Menge an im Pufferspeicher irgendeines Eingabespeichergerätes gespeicherten Daten aus irgendeinem Grund unter einen bestimmten unteren Grenzwert (Leerzustand), so können nicht alle zur Verarbeitung in dem Prozessor erforderlichen Operandendaten gemeinsam bereitgestellt werden. In diesem Fall schaltet das betreffende Speichergerät das Ausgangssignal des ersten Zustands (GOR) aus, während die Steuerplatte bewirkt, daß ein zweites Arbeitstaktsignal (PCLK) nicht mehr dem Prozessor zugeführt wird und gleichzeitig bei Erfassen des Abschaltens des Ausgangssignals des ersten Zustands (GOR) zwangsläufig auch das Ausgangssignal des zweiten Zustands (GIR) ausgeschaltet wird. Die Ausgangsspeichergeräte sind jeweils so ausgelegt, daß sie keine Daten in den internen Pufferspeicher geben, wenn das Ausgangssignal des zweiten Zustands (GIR) ausgeschaltet ist. Dadurch läßt sich verhindern, daß die gleichen verarbeiteten Daten irrtümlich auf der Seite des Ausgangsspeichergerätes eingeschrieben werden.
Falls ferner das Einschreiben in einen Hauptspeicher nicht mit dem Auslesen aus dem Pufferspeicher irgendeines Ausgangsspeichergeräts Schritt halten kann, nähert sich die Menge an in dem Pufferspeicher enthaltenen Daten dessen Kapazitätsgrenze (Vollzustand). Daher schaltet wie im Fall eines Leerzustands der Datenmenge das betreffende Ausgangsspeichergerät das Ausgangssignal des zweiten Zustands (GIR) ab, während die Steuerplatte das Ausgangssignal des ersten Zustands (GOR) zwangsläufig abschaltet und bewirkt, daß bei Erfassen der Abschaltung des Ausgangssignals des zweiten Zustands (GIR) das zweite Arbeitstaktsignal (PLCK) dem Prozessor nicht mehr zugeführt wird.
Ferner sind die einzelnen Speichergeräte so ausgelegt, daß sie keine Daten aus dem Pufferspeicher lesen, wenn das Ausgangssignal des ersten Zustands (GOR) ausgeschaltet ist. Dadurch läßt sich verhindern, daß die redundanten Daten aus dem Pufferspeicher ausgelesen werden, selbst wenn der Prozessor in seinem Betrieb angehalten worden ist, weil das Einschreiben in den Hauptspeicher mit dem Auslesen aus dem Pufferspeicher nicht Schritt halten kann.
Bevorzugte Ausführungsbeispiele der Erfindung werden nachstehend anhand der Zeichnungen näher erläutert. In den Zeichnungen zeigt
Fig. 1 ein allgemeines Aufbauschema eines Pipeline-Datenverarbeitungssystems gemäß einem Ausführungsbeispiel der Erfindung,
Fig. 2 ein Blockdiagramm zur Veranschaulichung des inneren Aufbaus einer in Fig. 1 gezeigten Speicherplatte,
Fig. 3 eine schematische Darstellung des Aufbaus einer in Fig. 2 gezeigten Verknüpfungsstufe,
Fig. 4 eine schematische Darstellung des Aufbaus einer Folgesteuerung einer in Fig. 1 gezeigten Steuerplatte,
Fig. 5 (a) ein Zustands-Übergangsdiagramm der Folgesteuerung in der Steuerplatte zur Steuerung des in Fig. 1 gezeigten Datenverarbeitungssystems,
Fig. 5 (b) ein Impulsdiagramm der typischen Steuersignale und Datensammelleitungen,
Fig. 6 eine schematische Darstellung des Aufbaus des Pipeline-Verarbeitungssystems bei Verwendung zur Ausführung eines einfachen Wiedergewinnungs- oder Suchvorgangs,
Fig. 7A ein Blockschaltbild zur Veranschaulichung des Aufbaus der Speicherplatte im Falle der Verwendung dynamischer Speicherelemente als Hauptspeicher des Speicherplatte nach Fig. 1,
Fig. 7B, 7C und 7D Blockschaltbilder unterschiedlicher Teile einer Zeitsignal-Generatorschaltung nach Fig. 7A mit einem Basiszeitsignal-Generatorteil für die Folgesteuerung, einer Zeitsteuerschaltung für die Steuersignalerzeugung für einen Hauptspeicher-Chipmodul und eine Logikstufe bzw. einer Schaltung zur Erzeugung eines Datenein-/-ausgangs-Steuersignals für einen Pufferspeicher,
Fig. 8 ein Zustands-Übergangsdiagramm der Folgesteuerung in der Speicherplatte,
Fig. 9 ein detailliertes Blockschaltbild der Logikschaltung nach Fig. 7A,
Fig. 10 ein Impulsdiagramm der Basiszeitsteuersignale zur Verwendung in der Zeitsteuergeneratorschaltung,
Fig. 11A und 11B Blockschaltbilder von peripheren Schaltungen des Pufferspeichers nach Fig. 7A und
Fig. 12 eine schematische Darstellung zur Erläuterung des oben abgehandelten Standes der Technik.
Bei einem im folgenden beschriebenen ersten Ausführungsbeispiel der Erfindung zeigt Fig. 1 ein Blockschaltbild eines Datenverarbeitungssystems mit sieben Speicherplatten, vier pipelineartig zusammengeschalteten Prozessorplatten und einer Steuerplatte zur Steuerung des Pipelinebetriebs.
Bei 101 bis 103 ist eine Gruppe von Eingangsspeicherplatten zur Speicherung von Daten und Zuführung der Daten an die Pipeline-Prozessoren dargestellt.
Mit 104 bis 107 ist eine Gruppe von Ausgangsspeicherplatten zur Aufnahme von Daten von den Pipeline-Prozessoren und Speicherung dieser Daten bezeichnet.
Bei 110 ist eine Steuerplatte zur Verwaltung der Arbeitsfolge dargestellt, mit der die Pipeline-Prozessoren die Datenverarbeitung ordnungsgemäß ausführen.
111 bis 114 sind pipelineartig zusammengeschaltete Prozessoren. Jede der Eingangsspeicherplatten und die Steuerplatte sind an drei externe Eingangs-Datensammelleitungen 121 bis 123 angeschlossen, während die Ausgangsspeicherplatten und die Pipeline-Prozessorplatten jeweils mit vier Ausgangssammelleitungen 131 bis 134 verbunden sind. Die Steuerplatte 110 erzeugt zum richtigen Zeitpunkt in synchroner Beziehung zu effektiven Daten auf den externen Eingangsdatensammelleitungen 121 bis 123, wobei diese Daten aus der Gruppe von Eingangsspeicherplatten synchron damit ausgelesen werden, ein Markierungssignal 143, fügt dieses Markierungssignal den Daten hinzu, wobei es in die "Token"-Datenform gebracht wird, und sendet es an eine der Pipeline-Prozessorplatten der nächsten Stufe. Jede der Pipeline-Prozessorplatten empfängt die von dem vorhergehenden Prozessor oder der Steuerplatte ausgegebenen Daten sowie auch das Markierungssignal, führt sowohl eine vorgegebene Datenverarbeitung als auch eine Verzögerung des Markierungssignals durch und überträgt die verarbeiteten Daten und das verzögerte Markierungssignal über die vier Ausgangssammelleitungen 131 und 134 als "externe Ausgangs-Token-Sammelleitungen" ordnungsgemäß auf die einzelnen Ausgangsspeicherplatten. Jede der Ausgangsspeicherplatten wählt die vorher eingestellte Ausgangsdatenleitung aus und empfängt die verarbeiteten Daten unter Bezugnahme auf das Markierungssignal. Im folgenden werden die Sammelleitungen zur Verbindung der Ausgangssammelleitungen, die das verzögerte Markierungssignal und die verarbeiteten Daten führen, und die Speicherausgangsplatten als externe Ausgangs-Token-Sammelleitungen bezeichnet.
141 ist ein GOR-Signal (Group Output Ready = Gruppenausgabe bereit), das angibt, daß sämtliche Eingangsspeicherplatten bereit sind, Daten auszugeben, wenn es den Wert "1" annimmt.
142 ist ein GIR-Signal (Group Input Ready = Gruppeneingabe bereit), das angibt, daß sämtliche Ausgangsspeicherplatten bereit sind, Daten aufzunehmen, wenn es den Wert "1" annimmt.
144 ist ein Arbeitstaktsignal MCLK (Memory Clock), das sämtlichen Speicherplatten von der Steuerplatte 110 zugeführt wird.
145 ist ein Arbeitstaktsignal PCLK (Processor Clock), das sämtlichen Pipeline-Prozessorplatten von der Steuerplatte 110 zugeführt wird.
Das MCLK-Signal weist den gleichen Zyklus und die gleiche Phase auf wie das PCLK-Signal, unterscheidet sich jedoch von diesem darin, daß es nach Beginn des Lesebetriebs für die Eingangsspeicherplatten ständig oszilliert, während das letztere nur während der Zeit oszilliert, während der die Pipeline-Verarbeitung durchgeführt wird.
Das in Fig. 2 gezeigte Ausführungsbeispiel ist in der Lage, eine Datenverarbeitung in Pipeline-Manier derart durchzuführen, daß es gleichzeitig maximal drei Operandendaten von den Eingangsspeicherplatten (d. h. den die Hauptspeicher bildenden Geräten, deren interne Betriebsfrequenzen voneinander verschieden sein können) zur Verarbeitung durch die Pipeline-Prozessorplatten liest und asynchron die von maximal vier Prozessorplatten ausgegebenen Daten in die Mehrzahl von Ausgangsspeicherplatten einschreibt (d. h. in Hauptspeicher bildende Geräte, deren interne Arbeitsfrequenzen voneinander verschieden sein können).
In dem in Fig. 2 gezeigten, den inneren Aufbau jeder Speicherplatte nach Fig. 1 zeigenden Blockschaltbild bezeichnet 201 einen Hauptspeicher, der beispielsweise von einem Magnetplatten- oder Halbleiterspeicher gebildet wird.
202 ist ein Pufferspeicher, für den beispielsweise ein von der Firma MMI Co., Ltd. unter der Bezeichnung "67413" hergestellter FIFO-Speicher verwendet werden kann. Zwischen dem Pufferspeicher 202 und einer externen Datensammelleitung 212 liegt ein Register 204 zur Anpassung der zeitlichen Beziehung zwischen dem internen Betrieb der Speicherplatte und dem externen Betrieb der Sammelleitung. Als eine der externen Datensammelleitungen 121 bis 123 nach Fig. 1 ist in Fig. 2 die Leitung 213 eingezeichnet.
Mit 203 ist eine Verknüpfungsstufe zur Steuerung des Ein/Ausgabebetriebs von Daten zwischen dem Pufferspeicher 202 und den externen Datensammelleitungen bezeichnet. Die Daten auf der externen Ausgangsdatensammelleitung 202 werden beim Anstieg eines MCLK-Signals 144 einmal in dem Register 204 zwischengespeichert und sodann bei Auftreten eines Einschiebesignals 209 in den Pufferspeicher 202 eingeschrieben. Die externe Datensammelleitung 212 stellt eine der Ausgangssammelleitungen 131 bis 134 nach Fig. 1 dar. Andererseits werden die vom Hauptspeicher in den Pufferspeicher 202 eingelesenen Daten beim Auftreten eines Ausbringsignals 212 ausgelesen und nach zeitlicher Anpassung durch das Register 204 auf die externe Eingangsdatensammelleitung 212 ausgegeben. Der Pufferspeicher 202 weist zur Angabe seines internen Zustandes die folgenden vier Signalarten auf.
205 ist ein IR-Signal (Input Ready = eingabebereit), das angibt, daß eine Eingangsstufe des Pufferspeichers 202 noch Platz zur Aufnahme von Daten hat, wenn es den Wert "1" aufweist.
206 ist ein VOLL-Signal, das anzeigt, daß die in dem Pufferspeicher 202 eingegebene Datenmenge eine bestimmte obere Grenze überschreitet, wenn es den Wert "1" annimmt.
207 ist ein OR-Signal (Output Ready = ausgabebereit), das angibt, daß in einer Ausgangsstufe des Pufferspeichers 202 effektive Daten vorliegen, wenn es den Wert "1" annimmt.
208 ist ein LEER-Signal, das angibt, daß die in den Pufferspeicher 202 eingegebene Datenmenge einen bestimmten unteren Grenzwert unterschreitet, wenn es den Wert "1" annimmt.
Die Datenübertragung zwischen dem Hauptspeicher 201 und dem Pufferspeicher 202 wird durch eine Folgesteuerung 223 gesteuert. Beim Lesevorgang liest die Folgesteuerung 223 in der Eingangsspeicherplatte blockweise den Inhalt des Hauptspeichers 201 aus und schreibt diesen in den Pufferspeicher 202. Je nach der in den Pufferspeicher 202 eingegebenen Datenmenge entscheidet die Folgesteuerung 223, ob der jeweils nächste Block ausgelesen wird oder nicht. Mit anderen Worten wird dann, wenn die in den Pufferspeicher 202 eingegebene Datenmenge einen gewissen oberen Grenzwert überschreitet, das VOLL-Signal 206 auf den Wert "1" gesetzt, woraufhin die Folgesteuerung 223 in der Speicherplatte bestimmt, daß der nächste Block nicht mehr ausgelesen wird.
Beim Schreibvorgang liest die Folgesteuerung 223 in der Ausgangsspeicherplatte den Inhalt des Pufferspeichers 202 blockweise aus und schreibt ihn in den Hauptspeicher 201. Ähnlich wie bei dem obigen Lesevorgang entscheidet die Folgesteuerung 223 je nach der im Pufferspeicher 202 enthaltenen Datenmenge, ob ein nächster Block eingeschrieben wird oder nicht. Unterschreitet die im Pufferspeicher 202 enthaltene Datenmenge eine vorgegebene untere Grenze, so wird das LEER-Signal 208 auf den Wert "1" gesetzt, woraufhin die Folgesteuerung 223 in der Speicherplatte verfügt, daß der nächste Block nicht mehr geschrieben wird.
221 ist ein Adressengenerator, der die Adresse in Abhängigkeit von einem von der Folgesteuerung 223 ausgegebenen Adressentaktsignal 224 weiterschaltet und außerdem eine Adresse dem Hauptspeicher zuführt. Mit 222 ist ein Ursprungs-Oszillator bezeichnet, der die Zeitsteuerung angibt, mit der Daten aus dem Hauptspeicher ausgelesen und in ihn eingeschrieben werden. 217 ist ein von der Prozessorplatte ausgegebenes Markierungssignal.
Das Blockschaltbild nach Fig. 3 zeigt Einzelheiten des Aufbaus der Verknüpfungsstufe 203.
Im Ausgangszustand haben zunächst sowohl das LEER-Signal 208 als auch das IR-Signal 205 den Wert "1", während das VOLL-Signal 206 und das OR-Signal 207 den Wert "0" aufweisen, so daß die Pufferspeicher 202 sämtlicher Speicherplatten leer sind.
Bei einem START-Signal 312 handelt es sich um ein Signal, das so gesteuert wird, daß es auf den Wert "1" steigt, wenn die Steuerplatte 110 die Eingangsspeicherplatte veranlaßt, mit dem Lesen von Daten zu beginnen, wobei die so ausgelesenen Daten in geeigneter Menge in den Pufferspeicher 202 der Eingangsspeicherplatte eingegeben werden.
Nehmen sowohl das OR-Signal 207 als auch die Inversion des LEER-Signals 208 als auch das START-Signal 312 am Eingang eines UND-Gliedes 301 den Wert "1" an, so wird der Q-Ausgang eines Flip-Flops 305 beim Auftreten des MCLK-Signals 144 auf "1" gelegt, und das so erhaltene Q-Ausgangssignal des Flip-Flops 305 sowie ein den Lesevorgang (Eingabemodus) anzeigendes Ausgangssignal werden in einem NAND-Glied 310 mit einem offenen Kollektor- oder offenen Drain-Ausgang verknüpft, um das GOR-Signal 141 als positives Logik-Signal auf "1" zu bringen. Dieses GOR-Signal liegt an sämtlichen Speicherplatten nach Art einer verdrahteten ODER-Verknüpfung. Daher wird, falls auch nur eine Eingangsspeicherplatte nicht bereit ist, Daten auszugeben und das GOR-Signal 141 nicht auf "1" setzt, der Wert des GOR-Signals 141 im Ergebnis zu "0", was angibt, daß die zur Bearbeitung in der Prozessorplatte erforderlichen Operandendaten noch nicht vollständig bereitstehen.
Dabei überwacht die Steuerplatte 110 den Wert des GOR-Signals 141 und setzt das Markierungssignal 143 auf "0", so daß die Prozessorplatte nicht irrtümlicherweise mit der Verarbeitung von Daten beginnt, und führt ferner eine Steuerung durch, die ein Oszillieren des PCLK-Signals 145 verhindert.
Die Eingangsspeicherplatte ist ferner so ausgelegt, daß sie anhand des Wertes des GOR-Signals 141 entscheidet, ob Daten auf die externe Eingangs-Datensammelleitung 213 ausgelesen werden sollen oder nicht. Ändert sich der Wert des GOR-Signals schließlich auf "1", was anzeigt, daß die zur Bearbeitung in der Prozessorplatte erforderlichen Operandendaten alle bereitgestellt sind, so setzt die Steuerplatte 110 beim Anstieg des ersten PCLK-Signals 145 das Markierungssignal 143 auf "1", wodurch die Prozessorplatte davon informiert wird, daß die Datenverarbeitung beginnen kann. Anzumerken ist, daß in der zeitlichen Steuerung keine Instabilitäten auftreten, weil das Flip-Flop in der Speicherplatte den Abfall und Anstieg des GOR-Signals 141 stets synchron mit dem Anstieg des MCLK-Signals 144 steuert.
Mit 309 ist eine Synchrondifferenzierstufe bezeichnet, die durch synchrones Differenzieren des MCLK-Signals 144 mit einem OCLK-Signal 315 (Original Clock = Originaltakt) als internem Bezugstakt ein abgeleitetes Taktsignal 314 ausgibt, das jeweils einen Impuls pro Zykluszeit des MCLK-Signals 144 aufweist. Das Vorhandensein der Stufe 309 ermöglicht mit Sicherheit das Auslesen von Daten synchron mit dem MCLK-Signal 144 selbst dann, wenn die Frequenzen und Phasen der jeweiligen OCLK-Signale 315 der einzelnen Speicherplatten untereinander verschieden sind. Genaugenommen wird dabei das abgeleitete Taktsignal 314 maximal um eine Zykluszeit gegenüber dem OCLK-Signal 315 versetzt. Dadurch jedoch, daß die Zykluszeit des MCLK-Signals 144 ausreichend länger gewählt wird als die des OCLK-Signals 315, läßt sich der zeitliche Versatz vom Register 204 mühelos aufnehmen.
Im folgenden soll eine konkrete Schaltung zur Erzeugung des Ausbringsignals 210, das den Zeitpunkt bestimmt, zu dem Daten aus dem Pufferspeicher 202 ausgelesen werden sollen, und des Einschiebesignals 209, das zum Einschreiben von Daten in den Pufferspeicher 202 dient, beschrieben werden. Zunächst sei dabei der Datenlesebetrieb aus dem Pufferspeicher 202 erläutert.
Haben sowohl der Q-Ausgang des Flip-Flops 305 als auch das OR-Signal 207 als auch das abgeleitete Taktsignal 314 am Eingang des NAND-Gliedes 303′ den Wert "1", so steigt der Q-Ausgang des Flip-Flops 307 asynchron mit dem als Takteingang dem Flip-Flop 307 zugeführten OCLK-Signal 315 auf "1". Ein NAND-Glied 303 erzeugt das Ausbringsignal 210, das zu dem Zeitpunkt, zu dem das GOR-Signal 141 den Wert "1" und das abgeleitete Taktsignal 314 den Wert "0" annimmt, abfällt. Dadurch wird der Wert des Ausbringsignals 210 auf "1" gehalten, sooft das GOR-Signal 141 den Wert "0" annimmt, was zu einem Ruhezustand führt, in dem die als nächstes auszulesenden Daten aus dem Pufferspeicher 202 ausgelesen werden können. Dies gestattet eine ordnungsgemäße Ausgabe von Daten selbst dann, wenn das GOR-Signal 141 auf "1" zurückgekehrt ist.
Die Steuerplatte 110 bewirkt eine derartige zeitliche Justierung, daß sowohl die aus der Eingangs-Speicherplatte ausgelesenen effektiven Daten als auch das den Wert "1" annehmende Markierungssignal 143 an die Seite der Prozessorplatte ausgegeben werden, so daß sie in der nächsten Stufe an eine der Pipeline-Prozessorplatten abgegeben werden. Jede dieser Pipeline-Prozessorplatten verarbeitet die Eingangsdaten und verzögert das Markierungssignal um eine zur Erzeugung der Daten erforderliche Zeitspanne, woraufhin das Markierungssignal 217 auf die mit der nächsten Pipeline-Prozessorplatte oder der Ausgangs-Speicherplatte verbundene externe Ausgangs-Token-Sammelleitung übertragen wird.
Nachstehend soll der Betrieb beim Dateneinschreiben in den Pufferspeicher 202 erläutert werden.
Haben sowohl ein Q-Ausgangssignal eines Flip-Flops 306, das GIR-Signal 142, ein weiteres Signal, das durch Zwischenspeichern des Markierungssignals 217 in einem Flip-Flop 316 mit dem als Takteingang zugeführten MCLK-Signal 144 gewonnen wird, sowie das abgeleitete Taktsignal am Eingang eines NAND-Gliedes 304′ sämtlich den Wert "1", so steigt ein Q-Ausgangssignal des Flip-Flops 308 asynchron mit dem diesem Flip-Flop als Eingangstaktsignal zugeführten OCLK-Signal 315 auf "1". Ein NAND-Signal 304 erzeugt das Einbringsignal 209, das zu dem Zeitpunkt abfällt, zu dem das IR-Signal 205 den Wert "1" und das abgeleitete Taktsignal 314 den Wert "0" annimmt. Dadurch wird der Wert des Einbringsignals 209 auf "0" gehalten, sooft das IR-Signal 205 den Wert "0" annimmt, was zu einem Ruhezustand führt, in dem die als nächste einzuschreibenden Daten nicht in die Eingangsstufe des Pufferspeichers 202 eingeschrieben werden können, selbst wenn das IR-Signal 205 den Wert "1" annimmt. Infolgedessen ist es möglich, kontinuierlich die richtigen Daten einzuschreiben, selbst nachdem das GIR-Signal 142 auf "1" zurückgekehrt ist.
Weisen sowohl das IR-Signal 205 und die Inversion des VOLL-Signals 206 am Eingang eines UND-Gliedes 302 den Wert "1" auf, so wird der Q-Ausgang eines Flip-Flops 306 bei Auftreten des als Eingangstakt dienenden MCLK-Signals 144 auf "1" gelegt; das resultierende Q-Ausgangssignal des Flip-Flops 306 und ein den Schreibzustand (Ausgabemodus) angebendes Ausgangssignal werden in einem NAND-Glied 311 mit offenem Kollektor- oder offenem Drain-Ausgang verknüpft, um das GIR-Signal 142 als positives Logik-Signal auf "1" zu setzen. In ähnlicher Weise setzen die übrigen Ausgangsspeicherplatten ihre GIR-Signale 142 auf "1". Daher kann, falls auch nur eine Ausgangsspeicherplatte bei der Dateneingabe versagt und das GIR-Signal 142 nicht auf "1" setzt, die Pipelineverarbeitung nicht erfolgen. Somit ist die Ausgangsspeicherplatte so aufgebaut, daß sie anhand des Wertes des GIR-Signals 142 Daten von der externen Ausgangs-Token-Sammelleitung 212 annimmt, wenn der Wert des GIR-Signals 142 auf "1" liegt.
Die Ausgangssignale der UND-Glieder 301, 302 werden an ODER-Gliedern 301′ bzw. 302′ mit einem ENDE-Signal 313 verknüpft, das angibt, daß die von einem Verarbeitungsrechner (host computer) für die Eingangsspeicherplatte bestimmte Datenverarbeitung beendet ist, so daß das GOR-Signal 141 oder das GIR-Signal 142 mit Sicherheit auf "1" gesetzt wird, sooft der interne Betrieb der Eingangsspeicherplatte beendet ist. Dadurch wird nach Beendigung des Lesens aller Daten die Steuerung so durchgeführt, daß das PCLK-Signal 145 oszillieren und die richtige Verarbeitung selbst in einer Periode durchgeführt werden kann, in der die Pipelineverarbeitung aufgrund einer Verzögerung auf der Pipeline noch nicht beendet worden ist.
Durch die obigen Schaltungsmittel können, obwohl die Pipelineverarbeitung gelegentlich gestört sein mag, Lesen und Schreiben der richtigen Daten durchgeführt werden, wenn die Verarbeitung nach Ablauf einer bestimmten Zeitspanne wieder aufgenommen wird.
In dem in Fig. 4 gezeigten internen Blockschaltbild der Steuerplatte 110 sind mit 401 bis 403 Zeitsteuerregister bezeichnet, durch die drei aus den Eingangsspeicherplatten synchron mit dem MCLK-Signal 144 ausgelesene, separate Daten gespeichert und bei Auftreten des PCLK-Signals 145 als Eingangstakt an die nächste Prozessorplatte gesendet werden.
404 ist ein Flip-Flop zur Erzeugung des PCLK-Signals 145 als Arbeitstaktsignal für die Prozessorplatten in Abhängigkeit von einem als Taktsignal dienenden MCLK × 2-Signal 415, dessen Frequenz doppelt so hoch ist wie die des MCLK-Signals 144. Sooft der Q-Ausgang des Flip-Flops 406 oder des Flip-Flops 407 (die beide später beschrieben werden) den Wert "0" annimmt, wird ein Q-Ausgang des Flip-Flops 404 in Zusammenarbeit mit dem UND/ODER-Glied 408 auf "0" zurückgeführt, wodurch der Betrieb der Prozessorplatten unterbrochen gehalten wird. In anderen Fällen oszilliert das Flip-Flop 404 mit gleichem Zyklus und gleicher Phase wie das MCLK-Signal.
414 ist ein UND-Glied, das nur dann, wenn der Q-Ausgang (QGOR) des Flip-Flops 406 und der Q-Ausgang (QGIR) des Flip-Flops 407 beide den Wert "1" annehmen, bewirkt, daß das PCLK-Signal 145 oszilliert und das Markierungssignal 143 auf "1" setzt.
405 ist ein Flip-Flop zur Speicherung eines Ausgangssignals des UND-Gliedes 414 und zur Erzeugung des Markierungssignals 143 bei Auftreten des PCLK-Signals 145 als Taktsignal. Nehmen sowohl das QGOR-Signal 431 als auch das QGIR-Signal 432 zum ersten Mal den Wert "1" an, so gelangt beim Anstieg des ersten PCLK-Signals 145 das Markierungssignal 143 auf den Wert "1".
406 ist ein Flip-Flop, das bei Auftreten des MCLK-Signals 144 als Eingangstakt und in Zusammenarbeit mit einem UND/ODER-Glied 410 bewirkt, daß das QGOR-Signal 431 rückgekoppelt wird, um seinen Wert zu halten, wenn sowohl das GOR-Signal 141 als auch das GIR-Signal 142 den Wert "0" annehmen, bzw. der Wert des GOR-Signals 141 mit einer Verzögerung von einem Takt gespeichert wird, wenn das GIR-Signal 142 auf "1" oder das QGOR-Signal 431 auf "1" gelangt.
407 ist ein Flip-Flop, das bei Auftreten des MCLK-Signals 144 als Eingangstakt und in Zusammenarbeit mit einem UND/ODER-Glied 411 bewirkt, daß das QGIR-Signal 432 rückgekoppelt wird, um seinen Wert zu halten, wenn sowohl das GOR-Signal 141 als auch das GIR-Signal 142 den Wert "0" annehmen, bzw. der Wert des GIR-Signals 142 mit einer Verzögerung von einem Takt gespeichert wird, wenn das GOR-Signal 141 den Wert "1" oder wenn das QGIR-Signal 432 den Wert "0" annimmt.
416 ist ein NAND-Glied mit zwei Eingängen, das eine "0" als speziellen Status ausgibt, wenn sowohl das QGOR-Signal 431 als auch das QGIR-Signal 432 den Wert "0" annehmen. In allen anderen Fällen hat es den Wert "1".
Auf diese Weise wird der Wert des GOR-Signals 141 oder des GIR-Signals 142, das zu einem früheren Zeitpunkt den Wert "0" angenommen hat, in dem entsprechenden einen Flip-Flop gespeichert, während der Q-Ausgang des anderen Flip-Flops beibehalten wird. Weisen ferner das GOR-Signal 141 und das GIR-Signal 142 gleichzeitig den Wert "0" auf, so speichern beide Flip-Flops die jeweils entsprechenden externen Signale.
412 ist ein NAND-Glied mit einem offenen Kollektor- oder offenen Drain-Ausgang, das dazu dient, das GIR-Signal 142 zwangsläufig "0" zu setzen, wenn das QGOR-Signal 431 den Wert "0" annimmt und das NAND-Glied 416 den Ausgang "1" liefert.
413 ist ein NAND-Glied mit offenem Kollektor- oder offenem Drain-Ausgang, das dazu dient, das GOR-Signal 141 zwangsläufig auf "0" zu setzen, wenn das QGIR-Signal 432 den Wert "0" annimmt und das NAND-Glied 416 den Ausgang "1" liefert.
Während einer Zeitspanne, in der entweder das GOR-Signal 141 oder das GIR-Signal 142 auf dem Wert "0" gehalten wird, wird somit auch das andere Signal zwangsläufig auf "0" gestellt, so daß sowohl der Lesevorgang von der Speicherplatte auf die externe Eingangsdatensammelleitung als auch der Schreibvorgang von der externen Ausgangs-Token-Sammelleitung in die Speicherplatte angehalten werden. Ferner wird auch das PCLK-Signal 145 angehalten und der Betrieb der Prozessorplatte unterbrochen, wobei das Markierungssignal 143 kontinuierlich auf dem Wert "1" gehalten wird.
Dadurch, daß die Folgesteuerung in der Speicherplatte so gebaut ist, daß das GOR-Signal 141 oder das GIR-Signal 142, das zu einem früheren Zeitpunkt auf "0" gesetzt worden ist, nach Ablauf einer bestimmten Zeitspanne wieder auf "1" zurückkehrt, wird also auch die Steuerplatte ihre Arbeit mit Sicherheit nach Ablauf einer bestimmten Zeitspanne wieder aufnehmen.
Fig. 5 (a) zeigt ein Zustandsübergangsdiagramm des Datenverarbeitungssystems auf der Annahme der oben erläuterten Hardware-Konfiguration. Eine Eingabe ist durch zwei Bits des GOR-Signals 141 und des GIR-Signals 142 gegeben, und der interne Zustand wird durch sieben, in Abhängigkeit von den Werten des QGOR-Signals 431, des QGIR-Signals 432 und des Markierungssignals 143 bestimmten Zuständen wiedergegeben. In Fig. 5 (a) gibt die in Klammern stehende Ziffer, die jedem den Zustand bezeichnenden Symbol zugeordnet ist, den Wert des Markierungssignals 143 wieder, während die rechts hinter jedem Symbol tiefgestellte Ziffer den Wert von (QGOR, QGIR) in Binär-Schreibweise angibt. Dabei wird eine Übergangs-Eingabe durch (GOR, GIR) angegeben.
Mit 501 ist ein Ausgangszustand S₀ (0) vor Beginn der Datenverarbeitung bezeichnet. Vor diesem Verarbeitungsbeginn werden die Flip-Flops 405, 406 und 407 auf der Steuerplatte und die Flip-Flops 305, 306, 307 und 308 auf sämtlichen Speicherplatten durch das Rückstellsignal 417 zurückgesetzt. Ferner werden auch die Pufferspeicher 202 auf sämtlichen Speicherplatten in einen Leerzustand zurückgestellt.
Wenn der zentrale Verarbeitungsrechner in diesem Ausgangszustand einen Befehl zum Beginn der Datenverarbeitung ausgibt, beginnt das MCLK-Signal 144 zu oszillieren. Gleichzeitig gehen das GOR-Signal 141 auf "0" und das GIR-Signal 142 auf "1", da die Pufferspeicher 202 auf sämtlichen Speicherplatten im Ausgangszustand in den Leerzustand zurückgesetzt sind. Dies führt sofort einen bei 502 angegebenen Zustand S₁(0) herbei. In diesem Zustand nimmt das QGOR-Signal 431 den Wert "0" und das QGIR-Signal 432 den Wert "1" an, wodurch das GIR-Signal 142 durch das NAND-Glied 412 in der Steuerplatte 101 zwangsläufig auf "0" gebracht wird.
Zu dem Zeitpunkt, zu dem sämtliche Eingangsspeicherplatten nach Ablauf einer bestimmten Zeit zur Datenausgabe bereit geworden sind, geht das GOR-Signal 141 auf "1", wodurch ein bei 503 bezeichneter Zustand S₃(0) erreicht wird. Da der Wert des GIR-Signals 142 im Zustand S₁(0) zwangsläufig auf "0" gebracht ist, kann ein Übergang aus diesem Zustand S₁(0) nur auf einen der beiden Zustände S₁(0) und S₃(0) erfolgen.
Im Zustand S₁(0) bleibt der Wert des Markierungssignals 143 noch auf "0", und das PLCK-Signal 145 wird noch nicht erzeugt. Geht das GOR-Signal 141 im Zustand S₃(0) infolge fehlender anfänglicher Steuerung des Pufferspeichers 202 in irgendeiner Speicherplatte auf "0", so erfolgt eine Rückkehr zum Zustand S₁(0). Hat das GOR-Signal 141 immer noch den Wert "1", so geht die Folgesteuerung in einen bei 504 bezeichneten Zustand S₃(1) über. Zu beachten ist, daß im Zustand S₃(0) das Markierungssignal 143 den Wert "0" hat und das PLCK-Signal 145 nicht oszilliert, so daß der Betrieb der Ausgangsspeicherplatten unterbrochen bleibt. Daher behält das GIR-Signal 142 auf jeden Fall seinen Wert "1" bei. Ein Übergang aus dem Zustand S₃(0) kann daher nur auf einen der beiden Zustände S₁(0) und S₃(1) erfolgen.
Im Zustand S₃(1) geht das Markierungssignal 143 auf "1", und die Pipeline-Prozessorplatten führen entsprechend dem PLCK-Signal 145 Datenverarbeitungen durch. Geht im Zustand S₃(1) das GIR-Signal 142 mindestens einer Ausgangsspeicherplatte auf "0", so erfolgt ein Übergang auf einen bei 505 gezeigten Zustand S₂(1). Da in diesem Zustand das QGOR-Signal 431 den Wert "1" und das QGIR-Signal 432 den Wert "0" annimmt, wird der Wert des GOR-Signals 141 durch die Steuerplatte 110 zwangsläufig auf "0" gebracht, wodurch das Auslesen von Daten aus den Eingangsspeicherplatten verhindert wird. Kehrt das GIR-Signal 142 nach Ablauf einer bestimmten Zeit auf "1" zurück, so wird der Zustand vor dem Übergang, d. h. der Zustand S₃(1), wiederhergestellt. Dabei ist zu beachten, daß ein Übergang aus dem Zustand S₂(1) nur auf einen der beiden Zustände S₂(1) und S₃(1) möglich ist, da im Zustand S₂(1) das GOR-Signal 141 zwangsläufig auf "0" gebracht ist.
Nimmt im Zustand S₃(1) der Wert des GOR-Signals 141 mindestens einer Eingangsspeicherplatte den Wert "0" an, so erfolgt ein Übergang auf einen bei 506 gezeigten Zustand S₁(1). Da in diesem Zustand das QGOR-Signal 431 den Wert "0" und das QGIR-Signal 432 den Wert "1" annimmt, wird das GIR-Signal 142 durch die Steuerplatte 110 zwangsläufig auf "0" gebracht, wodurch das Schreiben von Daten in die Ausgangsspeicherplatten verhindert wird. Kehrt das GOR-Signal 141 nach Ablauf einer bestimmten Zeit auf "1" zurück, so wird der Zustand vor dem Übergang, d. h. der Zustand S₃(1), wiederhergestellt. Da im Zustand S₁(1) das GOR-Signal 141 zwangsläufig auf "0" eingestellt ist, kann ein Übergang aus dem Zustand S₁(1) nur auf einen der beiden Zustände S₁(1) und S₃(1) erfolgen.
Gehen im Zustand S₃(1) sowohl das GOR-Signal 141 als auch das GIR-Signal 142 auf "0", so erfolgt ein Übergang auf einen bei 507 dargestellten Zustand S₀(1). Während in diesem Zustand sowohl das QGOR-Signal 431 aus auch das QGIR-Signal 432 den Wert "0" haben, werden die Werte des GOR-Signals 141 und des GIR-Signals 142 durch das NAND-Glied 416 der Steuerplatte 110 nicht auf "0" gebracht. Sobald das GOR-Signal 141 auf "1" geht, nimmt das QGOR-Signal 431 den Wert "1" an, was in einem Übergang auf den Zustand S₂(1) resultiert. Geht andererseits das GIR-Signal 142 zuerst auf "1", so nimmt das QGIR-Signal 432 den Wert "1" an, was in einem Übergang auf den Zustand S₁(1) resultiert. Gehen sowohl das GOR-Signal 141 als auch das GIR-Signal 142 auf "1", so kehrt die Folgesteuerung zum Zustand S₃(1) zurück.
In der obigen Erläuterung ist dargelegt worden, daß die Pipeline-Verarbeitung der Prozessorplatten ausgeführt werden kann, ohne daß ein Zustand gegenseitiger Blockierung auftritt, indem die Folgesteuerung in der Steuerplatte mit dem 2-Bit-Eingangssignal angesteuert wird, das durch den Wert des den Zustand der Eingangsspeicherplatten angebenden GOR-Signals 141 und den Wert des den Zustand der Ausgangsspeicherplatten angebenden GIR-Signals 142 gegeben ist, so daß die Datenverarbeitungsfolge Übergänge zwischen den erwähnten sieben Zuständen ausführt.
Wird die Zeitspanne, in der sich die Datenverarbeitungsfolge im Zustand S₃(1) befindet, verlängert, so nähert sich die Sammelleitungs-Belegungsrate dem Wert 100%, was einem System entspricht, das als hochleistungsfähiges Datenverarbeitungssystem betrachtet werden kann. Wichtige Gesichtspunkte zur Erzielung eines derartigen Systems sind die Kapazität des Pufferspeichers 202 jeder Speicherplatte und der Aufbau der Folgesteuerung, die den Pufferspeicher steuert.
Fig. 5 (b) zeigt ein Impulsdiagramm für typische Steuersignale und Daten zur Veranschaulichung der Arbeitsweise nach Fig. 5 (a) entsprechend der Folgesteuerung der Fig. 4. Beim Übergang vom Zustand S₃(1) auf den Zustand S₁(1) ist das PCLK-Signal 145 aktiv, so daß die Prozessorplatten selbst unmittelbar nach dem Übergang auf den Zustand S₁(1) arbeiten. Die während dieser Zeitspanne ausgelesenen Daten werden in den Registern 401 bis 403 gespeichert. Außerdem werden die beim Übergang auf den Zustand S₁(1) in den Ausgangsstufen der Prozessorplatten gespeicherten Daten beim Übergang vom Zustand S₁(1) in den Zustand S₃(1) in die Speicherplatten eingeschrieben. Somit tritt keine Unterbrechung im Datenfluß auf.
Fig. 6 zeigt den Aufbau des Pipeline-Verarbeitungssystems bei Verwendung zur Durchführung eines einfachen Wiedergewinnungs- bzw. Suchvorgangs (retrieval) als Beispiel einer Datenverarbeitung.
Mit 601 ist eine Datenbank in Form einer fünf Felder (A) bis (E) enthaltenden Tabelle angegeben.
602 ist ein Eingangsspeichergerät, das nur diejenigen Daten speichert, die in dem Feld (A) enthalten sind und der Speicherplatte 101 in Fig. 1 entsprechen. 603 ist ein Eingangsspeichergerät, das nur die in dem Feld (B) enthaltenen und der Speicherplatte 102 in Fig. 1 entsprechenden Daten speichert. 604 ist ein Eingangsspeichergerät zur Speicherung nur derjenigen Daten, die in dem Feld (E) enthalten sind und der Speicherplatte 103 nach Fig. 1 entsprechen. Im vorliegenden Ausführungsbeispiel erfolgt die Erläuterung auf der Annahme, daß eine Wortlänge jedes Speichergerätes größer ist als eine Satzlänge jedes Feldes. Ferner ist angenommen, daß dann, wenn eine Wortlänge kleiner ist als eine Satzlänge, der Satz über mehrere Speichergeräte gespeichert wird.
Es sei nun angenommen, daß der Suchvorgang unter der Bedingung ausgeführt wird, daß diejenigen Satzdaten im Feld (E) gesucht werden, die den Satzdaten "1" im Feld (A) und den Satzdaten "A" im Feld (E) entsprechen, wobei außerdem die Anzahl dieser Satzdaten bestimmt wird.
Mit 610, 620 und 630 sind Prozessoren bezeichnet, die den Prozessorplatten #1, #2 bzw. #3 in Fig. 1 entsprechen. Die in den Speichergeräten 602 bis 604 gespeicherten Daten werden vom Kopfsatz an sequentiell ausgelesen und dann auf die A-, B- bzw. C-Sammelleitungen ausgegeben.
Ein in dem Prozessor 610 der ersten Stufe vorgesehener Komparator 611 vergleicht die Daten auf der A-Sammelleitung mit "1". Je nach vorhandener oder fehlender Übereinstimmung gibt der Komparator 611 eine "1" bzw. "0" auf die A-Sammelleitung des nächsten Prozessors 620. Die Daten auf den B-, C- und F-Sammelleitungen werden über Verzögerungsstufen 612, 613 und 614, die jeweils Verzögerungszeiten entsprechend den für die obigen Vergleichsvorgänge erforderlichen Zeitspannen aufweisen, auf die B-, C- und F-Sammelleitungen des nächsten Prozessors gegeben.
Ein in dem nächsten Prozessor 620 enthaltener Komparator 621 vergleicht die Daten auf der B-Sammelleitung mit "A". Je nach vorhandener oder fehlender Übereinstimmung gibt der Komparator 621 eine "1" bzw. "0" aus. Dieses Ausgangssignal wird in einem UND-Glied 625 mit einem Signal verknüpft, das aus einer Verzögerung der Daten auf der A-Sammelleitung über ein Verzögerungsglied 626 stammt, wobei dieses Verzögerungsglied eine Verzögerungszeit aufweist, die der für den Vergleichsvorgang erforderlichen Zeitspanne entspricht, und das sich ergebende logische Produkt wird auf die A-Sammelleitung des nächsten Prozessors ausgegeben. Die Daten auf den B-, C- und F-Leitungen werden über Verzögerungslieder 622, 623 bzw. 624 auf B-, C- und F-Leitungen des nächsten Prozessors gegeben, wobei diese Verzögerungsglieder Verzögerungszeiten aufweisen, die den für die obigen Vergleichsvorgänge jeweils erforderlichen Zeitspannen entsprechen.
Nimmt das Markierungssignal auf der F-Leitung den Wert "1" an, so wird eine Zählerschaltung 631 im nächsten Prozessor 630 eingeschaltet und zählt bei Auftreten des PCLK-Signals 145 aufwärts, wenn die Daten auf der A-Leitung den Wert "1" annehmen. Im Ergebnis werden die gesuchten oder wiedergewonnenen Daten sequentiell in ein Ausgangsspeichergerät 605 eingeschrieben, und die Menge der wiedergewonnenen Daten wird in der Zählerschaltung 631 verzeichnet.
In dem obigen Ausführungsbeispiel kann es sich bei dem Hauptspeicher um einen Primärspeicher, etwa einen Halbleiterspeicher, oder einen Sekundärspeicher, etwa eine Magnetplatte, handeln. Im Falle eines Halbleiterspeichers ist die Blocklänge durch die Anzahl der Datenbänke eines Speicherchips gegeben, die zum parallelen Lesen und Schreiben von Daten verwendet werden können. Im Falle einer Magnetplatte ist die Blocklänge durch die Anzahl der in einem Sektor oder einer Spur enthaltenen Sätze vorgegeben.
Im folgenden soll ein Ausführungsbeispiel des Speichergeräts beschrieben werden, das mit dynamischen Speicherelementen als Hauptspeicher arbeitet. Bei dynamischen Speicherelementen ist innerhalb einer vorgegebenen Zeitspanne ein ein- oder mehrmaliger sicherer Zugriff zu sämtlichen unterschiedlichen Speicheradressen als Auffrischvorgang erforderlich. Im vorliegenden Ausführungsbeispiel wird ein solcher Auffrischvorgang für das externe System nicht sichtbar. Anders ausgedrückt, erfolgt der Zugriff, ohne daß der Auffrischvorgang für das externe System wahrnehmbar wird. In der nachstehenden Beschreibung ist als Beispiel eine Bildverarbeitung angenommen.
Bei dem in dem Blockschaltbild nach Fig. 7 gezeigten Aufbau des Speichergeräts ist mit 702-705 ein Hauptspeicher-Chipmodul aus P (im gezeigten Beispiel 4) Bänken bezeichnet, die aus dynamischen Speicherelementen zur Speicherung von Bilddaten bestehen. Sämtliche Bilddaten werden in den Hauptspeicher-Chipmodul in einer in Pixel-Einheiten unterteilten Form gespeichert.
Die aus dem Hauptspeicher-Chipmodul 702-705 parallel ausgelesenen Pixeldaten werden von einer Logikschaltung 706 parallel/seriell umgesetzt und dann als (serielles) Signal 712 zum Einschreiben in einen Pufferspeicher 707 ausgegeben. Die Logikschaltung 706 dient ferner dazu, die aus dem Pufferspeicher 707 in Form eines (seriellen) Signals 713 ausgelesenen Daten anzunehmen und dieses Signal seriell/parallel umzusetzen, so daß es in Form eines Signals 901 parallel in den Speicher-Chipmodul 702-705 eingeschrieben werden kann.
Bei dem Pufferspeicher 707 handelt es sich um einen FIFO-Pufferspeicher, der beim Auslesen der Pixeldaten auf eine externe Ausgangsleitung 710 diese Pixeldaten von der Logikschaltung 706 in Form des Signals 712 annimmt und beim Schreiben von rastergetasteten Daten von einer externen Eingangsleitung 711 die Pixeldaten an die Logikschaltung 706 in Form des Signals 713 mit der Zeitsteuerung des Hauptspeicher-Chipmoduls ausgibt. Als Pufferspeicher 707 kann beispielsweise ein von der Firma MMI Co., Ltd. unter der Bezeichnung "67413" bezeichneter FIFO-Speicher verwendet werden.
Damit die Daten unabhängig vom Auffrischvorgang des Hauptspeicher-Chipmoduls kontinuierlich gelesen bzw. geschrieben werden können, selbst wenn die Übertragungsgeschwindigkeiten auf den externen Leitungen 710, 711 sich in einem Bereich unter einem vorgegebenen oberen Grenzwert ändern, bewirkt die Folgesteuerung, daß der Hauptspeicher-Chipmodul 702-705 je nach dem Zustand des Pufferspeichers 707 und der An- oder Abwesenheit eines Auffrischvorgangs dem Zustandsübergang unterworfen ist.
Die Folgesteuerung nach Fig. 7A weist eine Zeitsignalgeneratorstufe 701 und eine Leitungsinterfacesteuerstufe 708 auf. Die Stufe 701 erzeugt ein zur Folgesteuerung des gesamten Speichergeräts verwendetes Zeitsteuersignal. Die Stufe 708 steuert den Pufferspeicher 707 und die externe Ausgangsleitung 710 so, daß Daten vom Pufferspeicher 707 ausgegeben werden, und überwacht das Signal von der externen Eingangsleitung 711 und steuert damit den Pufferspeicher 707 so, daß Daten in den Pufferspeicher 707 eingegeben werden.
Als nächstes sollen vier Zustände des Hauptspeicher-Chipmoduls 702-705 sowie die Übergänge zwischen diesen Zuständen anhand von Fig. 8 erläutert werden, die ein Zustandsübergangsdiagramm bezüglich der internen Zustände der Folgesteuerung zeigt.
Der interne Zustand der Folgesteuerung ist in vier Zustände unterteilt (nämlich einen Ausgangszustand, einen normalen Speicherzugriffszustand, einen Auffrischzustand und einen Speicherwartezustand), und zwar abhängig von der An- oder Abwesenheit eines normalen Speicherzugriffs und eines Auffrischvorgangs bezüglich des Hauptspeicher-Chipmoduls 702-705. Um die Standardbedingungen für die Zugriffszeitsteuerung der dynamischen Speicherelemente zu erfüllen, erfolgt der Zustandsübergang am Speicherzugriffswendepunkt.
Im folgenden sollen die jeweiligen Zustände im einzelnen beschrieben werden.
Zustand 801: Ausgangszustand
Der Ausgangszustand 801 stellt denjenigen Zustand dar, in dem kein Speichergerät durch das externe Bildverarbeitungssystem aktiviert ist und kein Auffrischvorgang durchgeführt wird. Wird in diesem Zustand ein Auffrischtriggersignal eingegeben (falls das Leitungstaktsignal auf "0" liegt), so erfolgt ein Übergang in den Auffrischzustand 804. Ferner tritt bei Eingabe eines Speicherzugriffsanforderungssignals und Fehlen eines Auffrischtriggersignals (falls das Leitungs-Takt-1-Signal auf "1" liegt) ein Übergang in einen normalen Speicherzugriffszustand 802 auf.
Zustand 802: Normaler Speicherzugriffszustand
Der normale Speicherzugriffszustand 802 stellt denjenigen Zustand dar, in dem das Speichergerät durch das externe Bild­ verarbeitungssystem aktiviert worden ist und ein Bilddaten-Lese/Schreibvorgang durchgeführt wird. Wird in diesem Zustand ein Auffrischtriggersignal eingegeben (falls das Leitungstaktsignal auf "0" liegt), so erfolgt ein Übergang in den Auffrischzustand 804. Ferner tritt bei Eingabe eines Speicherwarteanforderungssignals und Fehlen eines Auffrischtriggersignals (falls das Leitungs-Takt-1-Signal auf "1" und das Leitungs-Takt-2-Signal auf "0" liegt) ein Übergang in den Speicher-Wartezustand 803 auf.
Zustand 803: Speicherwartezustand
Der Speicherwartezustand 803 stellt denjenigen Zustand dar, in dem das Speichergerät durch das externe Bildverarbeitungssystem aktiviert, ein normaler Speicherzugriff jedoch verhindert ist. In diesem Zustand erfolgt kein Auffrischvorgang. Wird in diesem Zustand ein Auffrischtriggersignal eingegeben (falls das Leitungstaktsignal auf "0" liegt), so erfolgt ein Übergang in den Auffrischzustand 804. Ferner tritt bei Eingabe eines Speicherzugriffsanforderungssignals und Fehlen eines Auffrischtriggersignals (falls das Leitungs-Takt-2-Signal auf "1" liegt) ein Übergang in den normalen Speicherzugriffszustand 802 auf.
Zustand 804: Auffrischzustand
Der Auffrischzustand 804 stellt denjenigen Zustand dar, in dem das Speichergerät einen Auffrischvorgang durchführt.
Unabhängig davon, in welchem Zustand sich der Hauptspeicher-Chipmodul befindet, erfolgt bei Eingabe des Auffrischtriggersignals (falls das Leitungstaktsignal auf "0" liegt) ein vorrangiger Übergang in den Auffrischzustand 804, so daß ein Auffrischvorgang durchgeführt und eine Zerstörung des Speicherinhalts verhindert wird. Wird das Auffrischtriggersignal nach Beendigung der Auffrischung gelöscht, kehrt die Steuerfolge in den Zustand vor dem Übergang auf den Auffrischzustand 804 zurück.
Die Folgesteuerung mit den obigen vier internen Zuständen hat folgende Funktionen:
  • (1) Sie führt dem Hauptspeicher-Chipmodul 702-705 im Auffrischzustand als Auffrischtriggersignal ein Signal mit einem Wiederholungszyklus zu, der sich nach der für die dynamischen Speicherelemente erforderlichen Auffrischzeit richtet.
  • (2) Während des Einlesens im normalen Speicherzugriffszustand stellt sie fest, wenn sich der Pufferspeicher 707 einem Vollzustand nähert, und erzeugt dann das Speicherwarteanforderungssignal.
  • (3) Beim Schreiben im normalen Speicherzugriffszustand stellt sie fest, wenn sich der Pufferspeicher 707 einem Leerzustand nähert, und erzeugt dann das Speicherwarteanforderungssignal.
Diejenigen Signale, die für die von der Folgesteuerung ausgeführte Steuerung erforderlich sind, sollen im folgenden anhand von Fig. 10 näher erläutert werden, die ein Impulsdiagramm der zur Steuerung der Speichergeräte nach der vorliegenden Erfindung verwendeten grundsätzlichen Zeitsteuersignale zeigt.
In Fig. 10 ist mit 1001 ein Originaltaktsignal bezeichnet. Sämtliche Signale zur Steuerung der Speichergeräte werden aufgrund dieses Originaltaktsignals erzeugt.
1002 ist ein Grundtaktsignal zur Spezifizierung des Ein/Ausgabevorgangs für ein Datenelement zwischen dem Pufferspeicher 707 und der Logikschaltung 706. Weist der Hauptspeicher-Chipmodul P Bänke auf, so sind P Grundtaktsignale vorhanden. Mit einen 1003 ist ein Speichertaktsignal bezeichnet, dessen Impulsbreite den P Grundtaktsignalen 1002 entspricht. Innerhalb einer Zykluszeit des Speichertaktsignals 1003 findet Zugriff zu P Pixeln im Hauptspeicher-Chipmodul parallel statt. Im folgenden wird eine Zykluszeit des Speichertaktsignals 1003 als Maschinenzyklus bezeichnet.
1004 ist ein Leitungstaktsignal, dessen Impulsbreite M Zyklen des Speichertaktsignals 1003 entspricht. Im folgenden wird eine Zykluszeit des Leitungstaktsignals 1004 als Leitungszyklus bezeichnet. In der Praxis erfolgt ein normaler Speicherzugriff zum Lesen bzw. Schreiben von Daten für R Maschinenzyklen innerhalb der M Maschinenzyklen (wobei RM-1). Ferner erfolgt der Auffrischvorgang über einen Maschinenzyklus innerhalb des Leitungszyklus (was durch den kreuz-schraffierten Teil bezeichnet ist).
In Fig. 10 ist angenommen, daß der Auffrischvorgang zu jeder beliebigen Zeit (in Fig. 10 schraffiert) innerhalb eines nächsten Maschinenzyklus, unmittelbar nachdem das Leitungstaktsignal 1004 auf "0" gegangen ist, durchgeführt wird. Ferner sei das Auffrischtriggersignal durch "0" (als Wert des Leitungstaktsignals 1004) gegeben. Praktisch verringert der Auffrischvorgang die effektive Übertragungsgeschwindigkeit des Speichergerätes. Um den Auffrischvorgang nur oft genug auszuführen, ist daher die Zykluszahl des Wiederauffrischvorgangs auf einen Wert gesetzt, der das K-fache des Leitungszyklus beträgt (wobei K eine positive ganze Zahl ist). Im vorliegenden Fall ist der Wert von K so gewählt, daß die Zeitspanne entsprechend den K × M Maschinenzyklen den Standardbedingungen für die Mindestzeit für das Auffrischintervall der verwendeten Speicherelemente genügt.
Mit 1005 ist in Fig. 10 ein Signal bezeichnet, das angibt, ob im anschließenden Maschinenzyklus ein normaler Speicherzugriff bezüglich des Hauptspeicher-Chipmoduls 702-705 auszuführen ist oder nicht. In der vorliegenden Beschreibung wird dieses Signal als Leitungs-Takt-1-Signal bezeichnet. Bei 1006 ist ein Speicherzugriffsanforderungssignal gezeigt, das hier als Leitungs-Takt-2-Signal bezeichnet wird. 1007 ist schließlich ein Speicher-Warteanforderungssignal, das als Warte-1-Signal bezeichnet wird.
In dem in Fig. 10 gezeigten Ausführungsbeispiel ist M = 4, R = 3 und K = 4.
Im folgenden soll die Beziehung zwischen dem Statusübergang (vgl. Fig. 8) in der Folgesteuerung der Speichergeräte und den verschiedenen Zeitsteuersignalen (vgl. Fig. 10) im einzelnen erläutert werden.
Zustand 801: Ausgangszustand
Eine Änderung des Wertes des Leitungstaktsignals 1004 auf "0" bringt einen Übergang in den Auffrischzustand 804 mit sich. Ändert sich der Wert des Leitungs-Takt-1-Signals 1005 auf "1", so erfolgt ein Übergang zum normalen Speicherzugriffszustand 802.
Zustand 802: Normaler Speicherzugriffszustand
Ändert sich das Warte-1-Signal 1007 auf den Wert "0" und das Leitungs-Takt-2-Signal 1006 auf den Wert "1", so bleibt die Steuerfolge im normalen Speicherzugriffszustand 802. Ändert sich das Leitungstaktsignal 1004 auf den Wert "0", so erfolgt ein Übergang in den Auffrischzustand 804. Geht das Warte-1-Signal 1007 auf "1", das Leitungs-Takt-1-Signal 1005 auf "1" und das Leitungs-Takt-2-Signal 1006 auf "0", so erfolgt ein Übergang in den Speicherwartezustand 803.
Zustand 803: Speicherwartezustand
Geht das Warte-1-Signal 1007 auf "1", das Leitungs-Takt-1-Signal 1005 auf "1" und das Leitungs-Takt-2-Signal 1006 auf "0", so bleibt die Steuerfolge im Speicherwartezustand 803. Geht das Leitungs-Takt-2-Signal 1006 auf "1", so erfolgt ein Übergang in den normalen Speicherzugriffszustand 802. Geht das Leitungstaktsignal 1004 auf "0", so erfolgt ein Übergang in den Auffrischzustand 804.
Zustand 804: Auffrischzustand
Geht das Warte-1-Signal 1007 auf "0" und das Leitungs-Takt-2-Signal 1006 auf "1", so geht die Steuerfolge in den normalen Speicherzugriffszustand 802 über. Nimmt das Leitungs-Takt-1-Signal 1005 den Wert "1" und das Leitungs-Takt-2-Signal 1006 den Wert "0" an, so erfolgt ein Übergang in den Speicherwartezustand 803. Geht das Leitungstaktsignal 1004 auf "1", so kehrt die Steuerung in den Zustand zurück, der vor dem Übergang in den Auffrischzustand 804 herrschte.
Anschließend soll erläutert werden, wie die vier Zustände innerhalb eines praktischen Ein/Ausgabevorgangs gesteuert werden.
Zu Beginn sei die Arbeitsweise des Speichergeräts in dem Fall beschrieben, daß von ihm Daten der externen Leitung 710 zugeführt werden.
Aufgrund von Faktoren, die einen Übergang zwischen zwei Zuständen der Folgesteuerung (d. h. zwischen dem Speicherzugriffszustand 802 und dem Speicherwartezustand 803) bewirken, werden zwei Zustände des Pufferspeichers, nämlich ein normaler und ein abnormer Zustand, definiert. Der abnorme Zustand bezeichnet einen nahezu vollen Zustand, bei dem die Menge an in den Pufferspeicher 707 eingegebenen Daten beim Auslesen des Speichergeräts über das (1-1/N)-fache der Gesamtkapazität gelangt, bzw. einen nahezu leeren Zustand, bei dem während des Schreibens in das Speichergerät die Datenmenge unter das 1/N-fache der Gesamtkapazität fällt. Andere als diese abnormen Zustände sind als normaler Zustand definiert.
Im folgenden wird erklärt, aus welchem Grund der abnorme Zustand berücksichtigt werden sollte.
Wie oben erwähnt, erfolgt ein Zustandsübergang in der Folgesteuerung am Speicherzugriffswendepunkt. Daher wird selbst bei Feststellung des abnormen Zustands maximal eine Speicherzugriffszeit benötigt, bis der Ein/Ausgabevorgang des Pufferspeichers 707 tatsächlich unterbrochen werden kann. Daher soll die Notwendigkeit einer sofortigen Unterbrechung des Ein/Ausgabevorgangs bezüglich des Pufferspeichers 707 vermieden werden, auch wenn der Pufferspeicher in den abnormen Zustand gebracht ist. Im Hinblick auf dieses Erfordernis ist der Pufferspeicher 707 so ausgelegt, daß er den vollständig leeren oder vollständig vollen Zustand nicht erreicht. Aus diesem Grund werden der fast leere und der fast volle Zustand als abnorme Zustände erfaßt.
Konkret ausgedrückt geht dann, wenn die im Pufferspeicher 707 gespeicherte Datenmenge den fast vollen Zustand (abnormen Zustand) erreicht, das Warte-1-Signal 1007 auf "1", was einen Übergang in den Speicherwartezustand 803 auslöst. Da in diesem Speicherwartezustand 803 keine Daten in den Pufferspeicher 707 gelangen, verringert sich die in ihm vorhandene Datenmenge allmählich. Daher gelangt nach Ablauf einer gewissen Zeit der Pufferspeicher 707 aus dem fast vollen Zustand und kehrt in den normalen Zustand zurück. Dabei wird der Wartezustand am Wendepunkt des nächsten Maschinenzyklus gelöscht.
Die vorstehende Beschreibung bezieht sich zwar auf die Pufferspeicherseite; es ist jedoch auch erforderlich, das Speichergerät so zu steuern, daß es nicht in einen Zustand gerät, in dem es im Speicherwartezustand 803 keine Daten senden kann (d. h. in einen entgegengesetzten abnormen Zustand), um mit Sicherheit kontinuierlich Daten auf die externe Leitung abzugeben.
Im Hinblick darauf ist das Volumen L des Pufferspeichers 707 folgendermaßen eingestellt.
Erstens wird die folgende Beziehung erfüllt:
L < N · P (1)
(wegen des Erfordernisses, daß die Menge P an pro Zeit in den Hauptspeicher-Chipmodul 702-705 einschreibbaren Daten kleiner sein soll als der Grenzwert L/N für den abnormen Zustand).
Zweitens wird im Hinblick auf das Erfordernis, daß die Geschwindigkeit der Verarbeitung von effektiven Daten in dem Speichergerät höher sein soll als die Geschwindigkeit der Datenverarbeitung des externen Bildverarbeitungssystems, die folgende Gleichung erfüllt:
(1/Tb) · (R/M) < 1/Tp (2)
wobei Tb eine Zykluszeit des Grundtaktsignals 1002 und Tp eine Zykluszeit des Taktsignals 1104 für das externe Bildverarbeitungssystem ist.
Drittens soll die Zeitperiode, innerhalb der das Speichergerät im Speicherwartezustand 803 gehalten wird, kürzer sein als die Zeitspanne, die das Speichergerät benötigt, um in den entgegengesetzten abnormen Zustand zu geraten.
Diese drei Erfordernisse werden im folgenden näher erläutert.
Als Möglichkeit zur Löschung des Speicherwartezustands werden die folgenden beiden Fälle verwendet.
Fall 1
Kehrt der Pufferspeicher 707 in den normalen Zustand zurück, so wird der Speicherwartezustand 803 sofort gelöscht.
Fall 2
Kehrt der Pufferspeicher in den Normalzustand und der Maschinenzustand in den unmittelbar vor Übergang in den Speicherwartezustand vorhandenen Zustand zurück, so wird der Speicherwartezustand 803 gelöscht.
Der obige Fall 1 benötigt mindestens zwei Maschinenzyklen als Zeitspanne, die zum Übergang in den Speicherwartezustand und zu dessen Löschung erforderlich ist, da im schlimmsten Fall ein Auffrischvorgang eingefügt ist. Daher soll als dritte Bedingung folgende Beziehung erfüllt sein:
(1-(1/N) - (1/N) · L ·Tp < P · Tb · 2 (3)
Der obige Fall 2 erfordert mindestens M Maschinenzyklen als Zeitspanne, die zum Übergang in den Speicherwartezustand zu dessen Löschung erforderlich ist. Daher soll als dritte Bedingung folgende Beziehung erfüllt sein:
(1-(1/N) - (1/N) · L ·Tp < P · Tb · M (3′)
Die obigen Darlegungen dienen zur Erläuterung des dritten Erfordernisses.
Faßt man die vorstehenden Ergebnisse zusammen, so wird bei dem Steuerverfahren des Falls 1 eine obere Grenze des Minimalwerts Lmin von L für ein Bildverarbeitungssystem mit beliebiger Arbeitsfrequenz aufgrund der Gleichungen (1), (2) und (3) folgendermaßen vorgegeben:
Lmin = Max ((P · R · 2 · N)/(M · (N-2)), P · N) (4)
wobei Max (,) bedeutet, daß der größere der beiden Werte angenommen wird.
In ähnlicher Weise wird in dem Steuerverfahren des Falls 2 eine obere Grenze für den Minimalwert Lmin von L für ein Bildverarbeitungssystem mit einer beliebigen Arbeitsfrequenz aufgrund der Gleichungen (1), (2) und (3′) folgendermaßen vorgegeben:
Lmin = Max ((P · R · N)/(N-2), P · N) (4′)
Im folgenden soll ein praktisches Beispiel für die Gleichungen (4) und (4′) angegeben werden.
Für N = 8, P = 4, M = 4 und R = 3 kann der Minimalwert von L aus dem zweiten Ausdruck der Gleichungen (4) und (4′) in beiden Fällen 1 und 2 auf 32 Worte gesetzt werden. Mit anderen Worten gestattet der Minimalwert von 32 Worten ein kontinuierliches Lesen von Daten für ein Datenverarbeitungssystem mit beliebiger Arbeitsfrequenz. Ist eine Zykluszeit Tb des Grundtaktsignals annähernd gleich einer Zykluszeit Tp des externen Systems, so muß R aus Gleichung (2) größer gewählt werden, da M und R jeweils positive ganze Zahlen sind. Für den Fall 2 wird daher der erste Ausdruck (links vom Komma) auf der rechten Seite der Gleichung (4′) größer als der zweite Ausdruck (rechts vom Komma), und der Wert von Lmin braucht nur entsprechend erhöht zu werden.
Die vorstehende Erläuterung betrifft ein spezielles Beispiel der Folgesteuerung für den Fall, daß Daten aus dem Speichergerät auf die externe Leitung ausgegeben werden.
Im folgenden soll der Statusübergang der Folgesteuerung im einzelnen beschrieben werden, der stattfindet, wenn Daten von der externen Leitung 111 dem Speichergerät zugeführt werden, d. h. im Falle eines Schreibvorgangs.
In diesem Zustand ist ein abnormer Zustand als ein solcher definiert, bei dem die Menge der im Pufferspeicher 707 gespeicherten Daten einen fast leeren Zustand erreicht hat, d. h. unter das 1/N-fache der Gesamtkapazität des Pufferspeichers 707 abgesunken ist.
Erreicht die im Puffer 707 gespeicherte Datenmenge zu irgendeinem Zeitpunkt diesen fast leeren Zustand, so erfolgt am Wendepunkt des nächsten Maschinenzyklus ein Übergang in den Speicherwartezustand 803. Da im Speicherwartezustand 803 keine Daten aus dem Pufferspeicher 707 ausgelesen werden, steigt die im Pufferspeicher 707 enthaltene Datenmenge allmählich an. Infolgedessen gelangt nach Ablauf einer gewissen Zeit der Pufferspeicher 707 wieder aus dem fast leeren Zustand heraus und kehrt am Wendepunkt des nächsten Maschinenzyklus in den normalen Zustand zurück. Wie im Falle des Lesens gibt es die folgenden beiden Methoden, den Wartezustand zu löschen.
Fall 1
Kehrt der Pufferspeicher 707 in den normalen Zustand zurück, so wird der Speicherwartezustand 803 sofort gelöscht. Anders als im Falle des Lesens besteht jedoch bei dieser Methode für den Übergang in den Speicherwartezustand eine beschränkende Bedingung. Diese Bedingung soll weiter unten beschrieben werden.
Fall 2
Kehrt der Pufferspeicher 707 in den normalen Zustand und der Maschinenzustand in denjenigen Zustand zurück, der vor Übergang in den Speicherwartezustand vorlag, so wird der Speicherwartezustand 803 gelöscht. In dieser Methode ist es wie im Falle des Lesens erforderlich, den Maschinenzustand unmittelbar vor Übergang in den Speicherwartezustand 803 zu speichern.
Um zu vermeiden, daß der Maschinenzustand in den entgegengesetzten abnormen Zustand, d. h. in den fast vollen Zustand, gerät, ist es in beiden Fällen 1 und 2 erforderlich, daß L die Bedingung der obigen Gleichung (4) für den Fall 1 bzw. diejenige der obigen Gleichung (4′) für den Fall 2 - ebenso wie im Falle des Lesens - erfüllt.
Die obige Beschreibung erläutert den Zustandsübergang in dem Fall, daß Daten von der externen Leitung dem Speichergerät zugeführt werden.
Im Vorhergehenden ist im einzelnen die Art und Weise des Zustandsübergangs in der Folgesteuerung für die kontinuierliche Datenein- und -ausgabe in bzw. von dem externen Datenverarbeitungssystem für die beiden Fälle des Lese- und des Schreibvorgangs erläutert worden.
Im folgenden soll nun eine Zeitsignalgeneratorschaltung zum Betreiben der Folgesteuerschaltung im einzelnen beschrieben werden.
Fig. 7B zeigt dabei ein Blockschaltbild der Zeitsignalgeneratorschaltung nach Fig. 7A, während Fig. 7C und 7D Blockschaltbilder von Zeitsteuerschaltungen in der Zeitsignalgeneratorschaltung zur Erzeugung von Steuersignalen für den Hauptspeicher-Chipmodul und die Logikschaltung zeigen. Die Fig. 7C und 7D sollen später erläutert werden.
Gemäß Fig. 7B umfaßt die Zeitsignalgeneratorschaltung 701 einen Originaltaktoszillator 720, eine Wartesteuerschaltung 728, einen Komparator 727, Registerstufen 724, 725, 726 und 749, eine Auswahlstufe 730, einen durch 3 teilenden Schaltkreis 721, durch 4 teilende Schaltkreise 722 und 723 sowie UND-Glieder 729 und 731.
Das Grundtaktsignal 1002 wird über den durch 3 teilenden Schaltkreis 721 gewonnen, der die Frequenz des Originaltaktsignals 1001 durch 3 teilt. Das Speichertaktsignal 1003 wird durch den durch 4 teilenden Schaltkreis 722 gewonnen, der das Ausgangsbit einer P-Bit-Zählerstufe (hier P = 4) mit dem als Takteingang zugeführten Grundtaktsignal 1002 decodiert. Das Leitungstaktsignal 1004 wird durch den durch 4 teilenden Schaltkreis 723 gewonnen, der ein Ausgangsbit einer M-Bit-Zählerstufe (hier M = 4) mit dem als Takteingang zugeführten Speichertaktsignal 1002 decodiert.
Das Leitungs-Takt-1-Signal 1005 wird über das UND-Glied 729 gewonnen, indem das Leitungstaktsignal 1004 und ein Trigger-4-Signal 1024 einer UND-Verknüpfung unterworfen werden. Das Leitungs-Takt-2-Signal 1006 wird über das UND-Glied 731 gewonnen, indem das Leitungs-Takt-1-Signal 1005 und eine Inversion des Wartungssignals 1007 einer UND-Verknüpfung unterworfen werden.
Bei dem Trigger-1-Signal 1021 handelt es sich um ein Signal mit positiver Logik, das das Auslesen von Daten aus dem Hauptspeicher-Chipmodul 702-705 an das externe Datenverarbeitungssystem angibt.
Das Trigger-2-Signal 1022 wird über das Flip-Flop 724 als ein Signal gewonnen, das durch Halten des Trigger-1-Signals 1021 bei Anstieg des Speichertaktsignals 1003 vorgegeben ist.
Ein Trigger-3-Signal 1023 wird über ein Flip-Flop 725 als ein Signal gewonnen, das durch Halten eines positiven Logiksignals 1113, das anzeigt, daß die in den Pufferspeicher 707 eingegebene Datenmenge P Pixel überschreitet, beim Anstieg des Speichertaktsignals 1003 vorgegeben ist. Das Signal 1113 kann durch eine Inversion des Leersignals 1111 ersetzt werden, was aus der obigen Gleichung (1) hervorgeht.
Ein Trigger-4-Signal 1024 wird über die Auswahlstufe 730 gewonnen, die im Falle des Lesens von Daten aus dem Hauptspeicher-Chipmodul 702-705 des Trigger-2-Signal 1022 und im Falle des Schreibens von Daten in den Hauptspeicher-Chipmodul 702-705 ein Signal auswählt, das aus der Verzögerung des Trigger-3-Signals 1023 durch die zur zeitlichen Justierung dienende Verzögerungsstufe 749 um einen Maschinenzyklus resultiert.
Die Registerstufe 726 speichert das Leitungstaktsignal 1004 sequentiell mit einer Verzögerung um einen Maschinenzyklus, wenn das Warte-1-Signal 1007 auf "0" geht, und behält seinen Inhalt bei, wenn das Warte-1-Signal 1007 den Wert "1" annimmt.
Ein Entsprechungssignal 1025 geht auf "1", wenn der Wert des Taktspeichersignals 1004 dem Wert der Registerstufe 726 in dem Komparator 727 entspricht, bzw. auf "0", wenn keine Übereinstimmung vorliegt.
Das Warte-1-Signal 1007 wird durch das Wartesteuersignal 728 gewonnen, das beim Anstieg des Speichertaktsignals 1003, nachdem das Trigger-4-Signal 1024 auf "1" gegangen ist, ein Vollsignal 1111 erfaßt, das angibt, daß die in den Pufferspeicher 707 eingegebene Datenmenge das (1 - (1/N))-fache der Gesamtkapazität des Pufferspeichers erreicht hat, oder ein Leersignal 1112, das angibt, daß die Datenmenge unter das (1/N)-fache der Gesamtkapazität abgesunken ist, oder das Entsprechungssignal 1025 oder ein Austrag-Datenfenstersignal 1012 als Grenzbedingung für den Fall 2 beim Schreiben.
In dem in Fig. 9 gezeigten Blockschaltbild der Logikschaltung nach Fig. 7A hat die Logikstufe 706 die Funktion, Daten zwischen dem Hauptspeicher-Chipmodul 702-705 und dem Pufferspeicher 707 ein- und auszugeben.
Zunächst soll der Lesevorgang zur Zuführung von Daten an die externe Leitung 710 erläutert werden. Dabei soll zunächst die Arbeitsweise der Logikstufe 706 bei der seriellen Eingabe von P Pixeldaten, die aus dem Hauptspeicher-Chipmodul 702-705 parallel ausgelesen worden sind, in den Pufferspeicher 707 beschrieben werden. Die parallel ausgelesenen P Pixeldaten 901 werden beim Abfallen eines Zwischenspeicher-1-Signals 1013 nach einem Maschinenzyklus in eine transparente Zwischenspeicherstufe 902 eingegeben. Bei der transparenten Stufe handelt es sich um einen Schaltkreis, der Eingangsdaten in Abhängigkeit vom Gleichbleiben bzw. Abfallen eines Zwischenspeichersignals zwischenspeichert. Außer der Zwischenspeicherstufe 902 handelt es sich auch bei der Zwischenspeicherstufe 908 um eine transparente Stufe. Diese Zwischenspeicherstufen unterscheiden sich in der Arbeitsweise von einer Zwischenspeicherstufe des D-Typs (die Eingangsdaten beim Anstieg eines Zwischenspeichersignals speichert), wie es etwa die Zwischenspeicherstufen 909, 1101, 1102, 1103 usw. in Fig. 11A und 11B sind.
Nach Zwischenspeicherung in den transparenten Zwischenspeicherstufen 902 werden die P Pixeldaten 901 beim Anstieg eines Lade-1-Signals 1014 parallel in ein Schieberegister 903 eingeschrieben. Die Schieberegister 903, 904 führen dann mit dem als Takteingang zugeführten Grundtaktsignal 1002 einen Schiebevorgang durch, so daß alle vorher ausgelesenen Pixeldaten nach einem Maschinenzyklus in das Schieberegister 904 eingeschoben sind. Ein Multiplexer 906 wählt die ersten P Pixeldaten, die beim Ansteigen des nächsten Grundtaktsignals 1002 in ein Register 909 unmittelbar oberhalb des Pufferspeichers 707 eingegeben werden.
Die Fig. 11A und 11B sind Blockschaltbilder von peripheren Schaltungen des Pufferspeichers nach Fig. 7A. Die in dem Register 909 nach Fig. 9 gespeicherten Daten 712 werden beim Auftreten eines in Fig. 11A gezeigten Einschiebesignals 1018 jeweils in einzelnen Dateneinheiten in den Pufferspeicher 707 eingeschrieben.
Um nur die von den Auffrischdaten unterschiedlichen effektiven Daten ordnungsgemäß in den Pufferspeicher 707 einzuschreiben, ist ein Datenfenstersignal erforderlich, das für die in dem Register 909 gespeicherten Daten 712 eine Schreibsteuerperiode spezifiziert. Zu diesem Zweck ist eine derartige Steuerung erforderlich, daß die während des Auffrischvorgangs ausgelesenen Daten 901 in die Schieberegister 903, 904 eingegeben werden, das Datenfenstersignal jedoch zu dem Zeitpunkt, zu dem die besagten Daten das Register 909 erreichen, auf "0" gesetzt wird, wodurch verhindert wird, daß diese Daten in den Pufferspeicher 707 eingeschrieben werden.
Im Speicherwartezustand 803 ist es ferner erforderlich, den Betrieb der Schieberegister 903, 904 und den Einschiebevorgang für den Pufferspeicher 707 anzuhalten. Daher werden sowohl ein Schiebe-1-Signal 1016 und Schiebe-2-Signal 1017 zur Unterbrechung des Betriebs der Schieberegister 903, 904 auf "0" gesetzt. Damit wird auch das Einschieben von Daten in den Pufferspeicher 707 unterbrochen.
Im übrigen wird in dem Maschinenzyklus nach Übergang in den Speicherwartezustand 803 der normale Speicherzyklus oder ein Auffrischvorgang ausgeführt. Die dabei ausgelesenen Speicherdaten 901 werden bei Abfall des Zwischenspeicher-1-Signals 1013 in die transparente Zwischenspeicherstufe 902 eingegeben. Ferner werden unmittelbar nach Übergang in den Speicherwartezustand 803 die im Register 909 gespeicherten Daten 712 in den Pufferspeicher 707 eingegeben.
Geht nach Ablauf einer gewissen Zeit nach Übergang in den Speicherwartezustand 803 das Voll-Signal 1112 auf "0", so kehrt der Pufferspeicher 707 in den Normalzustand zurück, und der Speicherwartezustand wird am Wendepunkt des nächsten Maschinenzyklus gelöscht.
Da im Fall 1 die ausgelesenen Daten bereits in die transparente Zwischenspeicherstufe 902 und die Schieberegister 903, 904 eingegeben sind, ist es erforderlich, das Einschiebedatenfenstersignal 1011 durch das Warte-1-Signal 1007 beizubehalten (vgl. Fig. 7B und 7C).
Im Fall 2 ist es anders als im Fall 1 nicht erforderlich, das Einschiebedatenfenstersignal 1111 (vgl. Fig. 7C) nur während der Zeit, während der das Warte-1-Signal 1007 auf "1" liegt, beizubehalten. Nötig ist es aber, den Maschinenzustand unmittelbar vor dem Übergang in den Speicherwartezustand in der Registerstufe 726 abzuspeichern.
Nach Löschen des Speicherwartezustands 803 gehen das Schiebe-1-Signal 1016 und Schiebe-2-Signal 1017 auf "1", so daß die Schieberegister 903, 904 mit dem Anstieg des nächsten Grundtaktsignals 1002 ihre Arbeit wieder aufnehmen und der Vorgang des Einschiebens von Daten für den Pufferspeicher 707 nach einer Grundtaktzeit fortgesetzt wird.
Obwohl der Maschinenzyklus unmittelbar nach Löschen des Speicherwartezustands 803 nicht ausgeführt wird, werden die Daten, die beim Übergang in den Speicherwartezustand 803 in die transparente Zwischenspeicherstufe 902 eingegeben worden sind, beim Anstieg des Lade-1-Signals 1014 nach einem Maschinenzyklus in das Schieberegister 903 eingeschrieben.
Ferner werden bei Erfassen eines Signals 1113, das angibt, daß eine Datenmenge von nicht weniger als P Pixeln in den Pufferspeicher 707 eingegeben ist, die Daten beim Auftreten des Austragssignals synchron mit einem Taktsignal 1104 des externen Datenverarbeitungssystems ausgelesen, sodann beim Abfallen eines Zwischenspeicher-3-Signals 1019 in eine transparente Zwischenspeicherstufe 1101 eingegeben und dann beim Anstieg des Taktsignals 1104 in einem Register 1102 gespeichert, um auf die externe Leitung 710 ausgegeben zu werden. Selbst wenn während des Zyklus, der auf denjenigen vorhergehenden Zyklus folgt, in dem die ersten P Pixeldaten eingegeben worden sind, keine Daten mehr eingegeben werden, läßt sich wegen der Koinzidenz der Periode, in der das Einschiebe-Datenfenstersignal 1011 im schlimmsten Fall auf "0" geht, vermeiden, daß der Pufferspeicher 707 vorübergehend in den völlig leeren Zustand gelangt, so daß ein kontinuierlicher Datenverlesevorgang möglich wird.
Im folgenden soll der Schreibbetrieb zur Aufnahme von Daten von der externen Leitung 711 im einzelnen erläutert werden. Gemäß Fig. 11B werden die Daten auf der externen Leitung 711 beim Anstieg des Taktsignals 1104 in ein Register 1103 eingegeben. Sodann werden bei Auftreten des Einschiebesignals synchron mit dem Taktsignal 1104 nur die effektiven Daten ausgewählt und in den Pufferspeicher 707 eingeschrieben. Erreicht nach Ablauf einer gewis 14317 00070 552 001000280000000200012000285911420600040 0002003842517 00004 14198sen Zeit das erste eingeschriebene Datenelement die Ausgangsstufe des Pufferspeichers 707, so geht asynchron ein Ausgabe-Bereit-Signal 1115, das angibt, daß Daten ausgegeben werden können, auf "1". Daraufhin nimmt zu einem geeigneten Zeitpunkt das Trigger-3-Signal 1023 den Wert "1" an, und beim Auftreten des Austragssignals 1019 werden die Daten 713 pixelweise aus dem Pufferspeicher 707 ausgelesen, um beim Abfall des Zwischenspeicher-2-Signals 1019 in die transparente Zwischenspeicherstufe 908 eingegeben zu werden.
Im folgenden soll die Arbeitsweise der Logikstufe 706 zum parallelen Einschreiben der Daten 713, die seriell aus dem Pufferspeicher 707 ausgelesen worden sind, in den Hauptspeicher 702-705 im einzelnen beschrieben werden.
Nachdem ein in Fig. 9 gezeigter Demultiplexer 907 einen Registerbereich des Schieberegisters 904 ausgewählt hat, in den die Daten 713 eingeschrieben werden sollen, werden beim Ansteigen des nächsten Grundtaktsignals 1002 die Daten 713 in diesen Registerbereich eingeschrieben. Dabei tritt in den anderen nicht ausgewählten Registerbereichen ein Verschiebevorgang ein. Sind die P Pixeldaten nach einem Maschinenzyklus zum Schieberegister 903 bewegt worden, so wird der P Pixel-Inhalt des Schieberegisters 903 beim Anstieg des Lade-2-Signals 1015 parallel in das Register 905 eingespeichert. Während des nächsten Maschinenzyklus wird dann der P Pixelinhalt des Registers 905 parallel in den Hauptspeicher-Chipmodul 702-705 eingeschrieben.
Wie beim Lesen wird ein Datenfenstersignal benötigt, um den Zeitpunkt anzugeben, zu dem die Daten 713 aus dem Pufferspeicher 707 in die transparente Zwischenspeicherstufe 908 eingelesen werden können. Dieser Zeitpunkt sollte die folgenden drei Bedingungen erfüllen.
Erstens sollen die Daten zu einem solchen Zeitpunkt gelesen werden, daß ein Auffrischvorgang umgangen wird. Bei dem obigen Lesevorgang ist es daher erforderlich, daß die effektiven Daten zu einem derartigen Zeitpunkt gelesen werden, daß der Maschinenzyklus, der auf denjenigen folgt, zu dem diese Daten in das Register 905 eingespeichert worden sind, nicht mit dem Auffrischzyklus zusammenfällt.
Zweitens sollen die P Pixeldaten, zu denen während eines Maschinenzyklus paralleler Zugriff möglich ist, zu einem derartigen Zeitpunkt gelesen werden, daß diese Daten gleichzeitig in den Hauptspeicher-Chipmodul 702-705 geschrieben werden können. Zu diesem Zweck ist, soweit die P Pixeldaten, zu denen paralleler Zugriff während eines Maschinenzyklus möglich ist, sich in fester Position auf dem Schirm befinden, eine Maßnahme vorgesehen, um die Pixeln aus einer etwas versetzten Position parallel zu schreiben. Genauer gesagt wird also nicht der Zeitpunkt, zu dem die effektiven Daten aus dem Pufferspeicher 707 gelesen werden, verschoben, sondern der Demultiplexer 907 so angesteuert, daß er die Dateneingabestelle verschiebt, wodurch es möglich wird, Daten zu einem vorgegebenen Zeitpunkt von jeder beliebigen Position der Daten konstant zu lesen.
Drittens ist es erforderlich, beim Beginn des Lesens von Daten aus dem Pufferspeicher selbst einen vorübergehenden Leerzustand des Pufferspeichers 707 zu vermeiden, da der Arbeitszyklus Tb des Hauptspeicher-Chipmoduls 702-705 länger ist als der Arbeitszyklus Tp des externen Systems. Mit dem Lesen soll daher begonnen werden, nachdem das Signal 1113, das angibt, daß Daten von mindestens P Pixeln in den Pufferspeicher 707 eingegeben sind, auf "1" gegangen ist.
Zu diesem Zweck wählt die Auswahlstufe 730 in Fig. 7B das Trigger-4-Signal 1024, das durch Verzögerung des Trigger-3-Signals 1023 um einen Maschinenzyklus gewonnen wird.
Die oben erwähnte Bestimmung des Zeitpunktes, zu dem Daten aus dem Pufferspeicher 707 gelesen werden, besteht darin, daß ein zukünftiges Ereignis erwartet wird, und läßt sich daher nicht generell in Form einer Schaltung ausführen. Da jedoch eine Leitungszykluszeit um ein ganzzahliges Vielfaches länger eingestellt ist als eine Maschinenzykluszeit, ist die Erwartung des zukünftigen Ereignisses praktisch äquivalent einer Verzögerung des vergangenen Ereignisses und läßt sich daher unter Verwendung einer Schaltung realisieren.
Anders als bei dem obigen Lesevorgang sollen beim Schreiben der Schreib- und Schiebevorgang am Schieberegister 904 verhindert werden, wenn das in Fig. 9 gezeigte Austrag-Datenfenstersignal 1012 auf "0" geht.
Ferner sollen auch im Speicherwartezustand 803 die Arbeit der Schieberegister 903, 904 und der Austragvorgang für den Pufferspeicher 707 angehalten werden.
Daher erfolgt die Steuerung so, daß das Schiebe-1-Signal 1016 und das Schiebe-2-Signal 1017 und ebenso das Warte-2-Signal 1008 auf "0" gehen.
Da ferner der Austragvorgang unmittelbar nach Übergang in den Speicherwartezustand 803 erfolgt, werden die aus Pufferspeicher 707 ausgelesenen Daten 713 gemäß Fig. 11B beim Abfallen des Zwischenspeicher-2-Signals 1019 in die in Fig. 9 gezeigte transparente Zwischenspeicherstufe 908 eingegeben.
Geht das Leer-Signal 1111 nach Ablauf einer gewissen Zeit nach Übergang in den Speicherwartezustand 803 auf "0", so kehrt der Pufferspeicher in den normalen Zustand zurück.
In beiden Fällen 1 und 2 nehmen, wenn der Speicherwartezustand 803 gelöscht ist, die Schieberegister 903, 904 mit dem Ansteigen des nächsten Grundtaktsignals 1002 ihre Arbeit wieder auf, und das Auslesen von Daten aus dem Pufferspeicher 707 wird nach einer Grundtaktzeit fortgesetzt.
Obwohl der Maschinenzyklus unmittelbar nach Löschen des Speicherwartezustands 803 nicht ausgeführt wird, werden die Daten, die beim Übergang in den Speicherwartezustand 803 in die transparenten Zwischenspeicherstufe 908 eingegeben worden sind, nach einem Maschinenzyklus in einen Registerbreich des Schieberegisters 904 eingeschrieben.
Zu diesem Zeitpunkt ist es beim Fall 1 erforderlich, daß der Speicherwartezustand unter der Bedingung gelöscht wird, daß der Pufferspeicher 707 in einen normalen Zustand zurückkehrt und der Maschinenzustand das gleiche Attribut aufweist wie zum Zeitpunkt des Übergangs in den Speicherwartezustand 803.
Das besagte Attribut wird dabei durch den Wert "0" oder "1" des Austragdatenfenstersignals 1012 zu dem Zeitpunkt, zu dem das Speichertaktsignal 1003 ansteigt, eindeutig bestimmt.
Der Grund für das zusätzliche Vorsehen dieser beschränkenden Bedingung besteht darin, daß dann, wenn die Maschinenzustände beim Beginn und beim Löschen des Speicherwartezustands 803 unterschiedliche Attribute aufweisen, nach dem Löschen des Speicherwartezustands 803 Diskontinuitäten in den Daten beim Lesevorgang des Zwischenspeichers 707 und beim Schiebevorgang der Zwischenspeicher 903, 904 verursacht würden. Dies wiederum würde zu der Gefahr führen, daß die gleichen Daten nacheinander verschoben werden oder Daten verloren gehen.
Die obige beschränkende Bedingung bedeutet, daß ein Zustandsübergang nicht erfolgen soll, wenn der Maschinenzustand mit dem gleichen Attribut mindestens nach einem Durchlauf des Leitungszyklus erreicht wird. Am Wendepunkt des Maschinenzyklus geht in diesem Maschinenzustand das Austragdatenfenstersignal 1012 auf "0", so daß kein Zugriff zum Pufferspeicher 707 stattfindet.
Infolgedessen tritt selbst unter der obigen beschränkenden Bedingung kaum das Problem auf, daß der Pufferspeicher 707 in den vollständig leeren Zustand gelangt. Beim Schreiben ist jedoch das Steuerverfahren des Falls 1 nicht vollkommen.
Abschließend sollen die Schaltungen zur Erzeugung von Lese/Schreib-Steuersignalen anhand der Fig. 7C und 7D beschrieben werden, die Schaltdiagramme zur Erzeugung dieser zur ordnungsgemäßen Ausführung von Lese/Schreib-Vorgängen erforderlichen Signale zeigen.
In Fig. 7C bildet ein Datenzugriffsfenstersignal 1009 ein Signal, das angibt, daß der normale Speicherzugriffszustand 802 vorliegt. Dieses Signal wird über ein Flip-Flop 732, dem als Takteingang das Grundtaktsignal 1002 zugeführt wird, in Form eines Pegelsignals gewonnen, das den Wert "1" nur für die nächste eine Maschinenzykluszeit nach Anstieg des Speichertaktsignals 1003 aufweist, wenn das Leitungs-Takt-2-Signal 1006 auf "1" liegt.
Bei dem Adressentaktsignal 1010 handelt es sich um ein Signal, das dazu dient, die Adresse des Hauptspeicher-Chipmoduls auf neuesten Sand zu bringen. Dieses Signal wird über ein Flip-Flop 733, dem als Takteingang das Grundtaktsignal 1002 zugeführt wird, in Form eines Impulssignals gewonnen, das den Wert "1" nur für eine Grundtaktzeit nach Anstieg des Speichertaktsignals 1003 hält, wenn das Leitungs-Takt-2-Signal 1006 auf "1" liegt. Somit erfolgt während des normalen Speicherzugriffs außerhalb des Auffrischvorgangs ein paralleler Zugriff von P Pixeln zum Hauptspeicher-Chipmodul, so daß die Adresse auf neuesten Stand gebracht wird.
Das Zwischenspeicher-1-Signal 1013 wird über ein Flip-Flop 740, dem als Takteingang das Grundtaktsignal 1002 zugeführt wird, in Form eines Impulssignals gewonnen, das beim Anstieg des Speichertaktsignals 1003 abfällt, wenn das Datenzugriffsfenstersignal 1009 auf "1" liegt.
Das Zwischenspeicher-2-Signal 1019 ist mit dem Austragsignal 1019 identisch.
Das Lade-1-Signal 1014 wird über ein Flip-Flop 739, dem als Takteingang das Grundtaktsignal 1002 zugeführt wird, in Form eines Impulssignals gewonnen, das beim Anstieg des Speichertaktsignals 1003 ansteigt, wenn das Warte-1-Signal 1007 auf "0" liegt.
Das Lade-2-Signal 1015 wird über ein Flip-Flop 740, dem als Takteingang das Grundtaktsignal 1002 zugeführt wird, in Form eines Impulssignals gewonnen, das beim Anstieg des Speichertaktsignals 1003 ansteigt, wenn das Warte-1-Signal 1007 auf "0" liegt.
Das Warte-2-Signal 1008 wird über eine Verzögerungsstufe 738, der als Takteingang das Originaltaktsignal 1001 zugeführt wird, in Form eines Signals gewonnen, das aus einer Verzögerung des Warte-1-Signals 1007 um eine Grundtaktzeit resultiert.
Das Einschiebedatenfenstersignal 1011 wird über eine Verzögerungsstufe 734, der als Takteingang das Speichertaktsignal 1003 zugeführt wird, in Form eines Signals gewonnen, das aus einer Verzögerung des Leitungstaktsignals 1003 um drei Maschinenzyklen (Verzögerungszeit von einem Maschinenzyklus + Verschiebezeit eines Maschinenzyklus gemäß dem Leitungstaktsignal 1004) resultiert.
Gemäß Fig. 7D wird das Einschiebesignal 1018 dadurch gewonnen, daß das Einschiebedatenfenstersignal 1011 mittels einer Verzögerungsstufe 735, der als Takteingang das Originaltaktsignal 1001 zugeführt wird, um eine Grundtaktzeit verzögert wird, dieses verzögerte Signal zusammen mit einer Inversion des Warte-2-Signals 1008 und einem Eingabe-Bereit-Signal 1114, das anzeigt, daß der Pufferspeicher 707 zur Dateneingabe bereit ist, einer UND-Verknüpfung unterworfen wird und dann über ein Flip-Flop 755, dem als Takteingang das Originaltaktsignal 1001 zugeführt wird, ein Impulssignal erzeugt wird, das den Wert "1" nur für eine Originaltaktzeit nach Abfall des Grundtaktsignals 1002 annimmt, wenn das obige, durch die UND-Verknüpfung gebildete Signal auf "1" liegt.
Das Austragdatenfenstersignal 1012 wird als ein Signal gewonnen, das daraus resultiert, daß das Leitungs-Takt-1-Signal 1005 über eine Verzögerungsstufe 736, der als Takteingang das Speichertaktsignal 1003 zugeführt wird, um (M-1) Maschinenzyklen verzögert und dieses verzögerte Signal durch eine Verzögerungsstufe 737, der als Takteingang das Grundtaktsignal 1002 zugeführt wird, um eine Grundtaktzeit weiter verzögert wird.
Ferner wird gemäß Fig. 7D das Austragsignal 1019 dadurch gewonnen, daß das Austragdatenfenstersignal 1012 über eine Verzögerungsstufe 738, der als Takteingang das Originaltaktsignal 1001 zugeführt wird, um eine Grundtaktzeit verzögert wird, dieses verzögerte Signal sowie eine Inversion des Warte-2-Signals 1008 und das Ausgabe-Bereit-Signal 1115 einer UND-Verknüpfung unterworfen werden und über ein Flip-Flop 756, dem als Takteingang das Originaltaktsignal 1001 zugeführt wird, ein Impulssignal erzeugt wird, das den Wert "1" nur für eine Originaltaktzeit nach Abfall des Grundtaktsignals 1002 annimmt, wenn das obige, durch UND-Verknüpfung gebildete Signal auf "1" liegt.

Claims (14)

1. Pipeline-Datenverarbeitungssystem mit einer Vielzahl von pipelineartig miteinander verbundenen Prozessoren (111 . . . 114), einer Vielzahl von Speichergeräten (101 . . . 107), die mit jedem der Prozessoren über Datenausgangsleitungen zur Zuführung von Daten an die Prozessoren oder Speicherung von Daten von den Prozessoren verbunden sind, und einer mit den Speichergeräten über Dateneingangsleitungen (121 . . . 123) verbundenen Steuerplatte (110) zur Verwaltung der Arbeitsfolgen der Prozessoren und Speichergeräte, dadurch gekennzeichnet,
daß jedes der Speichergeräte (101 . . . 107) einen Hauptspeicher (201) zur Speicherung der von den jeweiligen Prozessoren (111 . . . 114) zu verarbeitenden oder verarbeiteten Daten, einen Pufferspeicher (202) zur vorübergehenden Datenspeicherung, eine erste Steuereinrichtung (223) zur zeitlichen Steuerung der Datenein-/-ausgabe zwischen dem Hauptspeicher und dem Pufferspeicher sowie eine zweite Steuereinrichtung (203) zur zeitlichen Steuerung der Datenein-/-ausgabe zwischen dem Pufferspeicher und den Ein/Ausgangsleitungen umfaßt,
daß die Steuerplatte (110) von der zweiten Steuereinrichtung (203) jedes Speichergeräts (101 . . . 107) ausgegebene erste und zweite Signale (141, 142) empfängt, die den Speicherzustand des Pufferspeichers (202) angeben, und Signale (145) zur Steuerung des Zeitpunktes, zu dem die von jedem Speichergerät ausgegebenen und von den Prozessoren (111 . . . 114) zu verarbeitenden Daten den Prozessoren zugeführt werden, bzw. des Zeitpunktes, zu dem die von den Prozessoren verarbeiteten und abgegebenen Daten in die nachfolgenden Prozessoren oder den oder die betreffenden Speichergeräte eingeschrieben werden, abgibt, und
daß jeder der Prozessoren (111 . . . 114) entsprechend den von der Steuerplatte (110) ausgegebenen Zeitsteuersignalen vorgegebene Datenverarbeitungen ausführt und das Verarbeitungsergebnis dem nachfolgenden Prozessor zuführt oder an das oder die betreffenden Speichergeräte (101 . . . 107) ein Zeitsteuersignal zum Einschreiben des Verarbeitungsergebnisses in dieses bzw. diese Speichergeräte ausgibt.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß die Speichergeräte (101 . . . 107) in eine Gruppe von Eingangsspeichergeräten zur Zuführung der zu verarbeitenden Daten an die Prozessoren (111 . . . 114) und eine weitere Gruppe von Ausgangsspeichergeräten zur Aufnahme der von den Prozessoren verarbeiteten Daten unterteilt sind.
3. System nach Anspruch 2, dadurch gekennzeichnet, daß die von der zweiten Steuereinrichtung (203) jedes Speichergeräts (101 . . . 107) ausgegebenen, den Speicherzustand des Pufferspeichers (202) angebenden ersten und zweiten Signale (141, 142) von einem Signal, das angibt, daß das betreffende Speichergerät zur Datenausgabe bereit ist, oder einem Signal, das angibt, daß das betreffende Speichergerät zur Dateneingabe bereit ist, gebildet sind, wobei die von jedem Speichergerät ausgegebenen Signale separat in verdrahteter ODER-Verknüpfung geschaltet sind.
4. System nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die zweite Steuereinrichtung (203) jedes Speichergeräts (101 . . . 107) eine Verknüpfungsschaltung enthält, die die den Speicherzustand des Pufferspeichers (202) angebenden Signale (141, 142) anhand eines Signals (205), das angibt, daß noch Platz zur Aufnahme von dem Pufferspeicher zugeführten Daten vorhanden ist, eines Signals (206), das angibt, daß die gespeicherte Datenmenge eine bestimmte obere Grenze überschreitet, eines Signals (207), das angibt, daß effektive Daten vorhanden sind, oder eines Signals (208) erzeugt, das angibt, daß die gespeicherte Datenmenge eine bestimmte untere Grenze unterschreitet.
5. System nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die erste Steuereinrichtung jedes Speichergeräts (101 . . . 107) eine Folgesteuerung (223) und einen Adressengenerator (221) aufweist, anhand eines Signals (205), das angibt, daß noch Platz zur Eingabe von dem Pufferspeicher (202) zugeführten Daten vorhanden ist, eines Signals (206), das angibt daß die gespeicherte Datenmenge eine obere Grenze überschreitet, eines Signals (207), das angibt, daß effektive Daten vorliegen, oder eines Signals (208), das angibt, daß die gespeicherte Datenmenge eine bestimmte untere Grenze unterschreitet, entscheidet, ob Daten aus dem Hauptspeicher (201) in den Pufferspeicher (202) gelesen oder aus dem Pufferspeicher in den Hauptspeicher geschrieben werden sollen, und dann eine entsprechende Adresse erzeugt.
6. System nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Steuerplatte (101) ein jedem Prozessor (111 . . . 114) zugeführtes Arbeitstaktsignal (145) unterbricht, wenn eines der ersten und zweiten Zustandssignale (141, 142) abgeschaltet ist, und das jeweils andere dieser beiden Zustandssignale abschaltet.
7. System nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß bei der Ausgabe des Verarbeitungsergebnisses nach Ausführung der vorgegebenen Datenverarbeitung jeder Prozessor (111 . . . 114) ein Signal (143) abgibt, das durch Verzögerung eines von dem vorhergehenden Prozessor zugeführten Zeitsteuersignals um eine Verarbeitungszeitspanne gewonnen wird.
8. Pipeline-Datenverarbeitungssystem mit einer Vielzahl von pipelineartig miteinander verbundenen Prozessoren (111 . . . 114), einer Vielzahl von Speichergeräten (101 . . . 107), die mit jedem der Prozessoren über Datenausgangsleitungen zur Zuführung von Daten an die Prozessoren oder Speicherung von Daten von den Prozessoren verbunden sind, und einer mit den Speichergeräten über Dateneingangsleitungen (121 . . . 123) verbundenen Steuerplatte (110) zur Verwaltung der Arbeitsfolgen der Prozessoren und Speichergeräte, dadurch gekennzeichnet, daß jedes der Speichergeräte (101 . . . 107) einen Hauptspeicher-Chipmodul (702 . . . 705) zur Speicherung der von den jeweiligen Prozessoren (111 . . . 114) zu verarbeitenden oder verarbeiteten Daten, einen zwischen dem Hauptspeicher-Chipmodul und den Ein/Ausgangsdatenleitungen (710, 711) angeordneten FIFO-Pufferspeicher (707) zur Ausgabe von Zustandssignalen, die angeben, daß die Daten in einem fast leeren Zustand gespeichert werden, in dem die Menge weniger als das 1/N-fache der Gesamtkapazität beträgt, bzw. daß die Daten in einem fast vollen Zustand gespeichert werden, indem die Menge das (1-(1/N))-fache der Gesamtkapazität überschreitet, sowie eine Folgesteuerung (701, 708) umfaßt, die die besagten Zustandssignale und ein Auffrisch-Anforderungssignal aufnimmt, um die einzelnen Komponenten so zu steuern, daß der Lese/Schreibvorgang des Hauptspeicher-Chipmoduls nach einer vorgegebenen Abfolge und unabhängig von einem Auffrischvorgang des Hauptspeicher-Chipmoduls sowie unabhängig von Unterschieden der Ein/Ausgabegeschwindigkeit gegenüber dem externen System erfolgen kann.
9. System nach Anspruch 8, dadurch gekennzeichnet, daß bei einer Gesamtkapazität des Pufferspeichers (707) von L und einer in den Hauptspeicher-Chipmodul (702 . . . 705) einzuschreibenden oder aus ihm auszulesenden Datenmenge von P (positive ganze Zahl) für den Pufferspeicher ein Wert N von 2 oder einer größeren ganzen Zahl gilt, die die Beziehung L/N < P erfüllt.
10. System nach Anspruch 8 oder 9, dadurch gekennzeichnet, daß bei einer Zykluszeit eines Grundtaktsignals von Tb und einer Zykluszeit eines Taktsignals des externen Systems von Tp der Hauptspeicher-Chipmodul (702 . . . 705) das parallele Lesen/Schreiben von P Daten während einer Maschinenzyklusperiode (Tb · P), das Lesen/Schreiben von effektiven Daten während R Maschinenzyklen innerhalb maximal M Maschinenzyklen (mit R < M und R und M positiven ganzen Zahlen) und einen Auffrischvorgang während eines Maschinenzyklus pro K × M Maschinenzyklen (wobei K = positive ganze Zahl) im Time-Sharing-Betrieb mit dem Lesen/Schreiben von effektiven Daten durchführt, wobei die obigen Vorgänge zyklisch ausgeführt werden, um ein ordnungsgemäßes Schreiben/Lesen von Daten für jedes beliebige externe System zu ermöglichen, dessen Zyklus Tp die Bedingung (1/Tb) · (R/M) < (1/Tp) erfüllt.
11. System nach Anspruch 8, wobei der Pufferspeicher (707) eine gesamte Datenkapazität aufweist, die über einem durch Max (P · R · N/(N-1), P · N) definierten Minimalwert liegt, so daß ein ordnungsgemäßes Lesen/Schreiben von Daten für jedes beliebige externe System ermöglicht wird, dessen Zyklus Tp die Bedingung (1/Tb) · (R/M) < (1/Tb) erfüllt.
12. System nach Anspruch 8, dadurch gekennzeichnet, daß die Folgesteuerung (701, 708) unter Verwendung eines Fenstersignals arbeitet, um beim Lesen nicht die während eines Auffrischvorgangs ausgelesenen ungültigen Daten in den Pufferspeicher zu schreiben und nicht die aus dem Hauptspeicher ausgelesenen Daten in den Pufferspeicher zu schreiben, wenn sich der Pufferspeicher in einem fast vollen Zustand befindet, und um beim Schreiben nicht irgendwelche Daten aus dem Pufferspeicher während des Auffrischvorgangs zu lesen und nicht irgendwelche Daten aus dem Pufferspeicher zu lesen, wenn sich dieser in einem fast leeren Zustand befindet, so daß das Schreiben/Lesen von Daten zwischen dem Hauptspeicher-Chipmodul und dem Pufferspeicher erfolgen kann, ohne das externe System zu stören, und unabhängig vom Zustand des Pufferspeichers und unabhängig von der An- oder Abwesenheit eines Auffrischvorgangs.
13. System nach Anspruch 8, dadurch gekennzeichnet, daß die Folgesteuerung (701, 708) während des Lesens/Schreibens auf bzw. von den Ein/Ausgangsdatenleitungen (710, 711) feststellt, daß die in den Pufferspeicher (707) eingegebene Datenmenge nicht kleiner ist als P, während des Lesens von Daten aus dem Hauptspeicher-Chipmodul (702 . . . 705) feststellt, daß die besagte Datenmenge nicht kleiner ist als P und dann mit dem Lesen aus dem Pufferspeicher (707) an das externe System beginnt, und in ähnlicher Weise während des Schreibens von Daten in den Hauptspeicher-Chipmodul die Datenmenge feststellt und dann mit dem Lesen aus dem Pufferspeicher in den Hauptspeicher-Chipmodul beginnt.
14. System nach Anspruch 8, dadurch gekennzeichnet, daß die Folgesteuerung (701, 708) beim Auslesen von Daten an das externe System mit dem Lesen von einem Zeitpunkt an beginnt, zu dem sich der Pufferspeicher (707) weder in einem fast leeren noch in einem fast vollen Zustand befindet, und beim Einschreiben von Daten aus dem externen System mit dem Lesen aus dem Pufferspeicher in den Hauptspeicher-Chipmodul (702 . . . 705) von einem Zeitpunkt an beginnt, zu dem sich der Pufferspeicher weder in einem fast leeren noch in einem fast vollen Zustand befindet, um zu verhindern, daß der Pufferspeicher zu dem Zeitpunkt, zu dem der Vorgang beginnt, vorübergehend in einen vollen Zustand gelangt.
DE3842517A 1987-12-17 1988-12-16 Pipeline-datenverarbeitungssystem Ceased DE3842517A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP62320852A JPH01161454A (ja) 1987-12-17 1987-12-17 ダイナミック型記憶素子を用いたメモリ装置
JP62327148A JP2723893B2 (ja) 1987-12-25 1987-12-25 パイプライン型データ処理装置

Publications (1)

Publication Number Publication Date
DE3842517A1 true DE3842517A1 (de) 1989-06-29

Family

ID=26570231

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3842517A Ceased DE3842517A1 (de) 1987-12-17 1988-12-16 Pipeline-datenverarbeitungssystem

Country Status (2)

Country Link
US (1) US5043883A (de)
DE (1) DE3842517A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19534637A1 (de) * 1995-09-19 1997-03-20 Winfried Gehrke Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5228129A (en) * 1987-04-01 1993-07-13 Digital Equipment Corporation Synchronous communication interface for reducing the effect of data processor latency
EP0389175A3 (de) * 1989-03-15 1992-11-19 Fujitsu Limited Datenvorausladesystem
US5680574A (en) * 1990-02-26 1997-10-21 Hitachi, Ltd. Data distribution utilizing a master disk unit for fetching and for writing to remaining disk units
US6728832B2 (en) * 1990-02-26 2004-04-27 Hitachi, Ltd. Distribution of I/O requests across multiple disk units
US5220650A (en) * 1991-01-22 1993-06-15 Hewlett-Packard Company High speed method for rendering antialiased vectors
US5353343A (en) * 1992-04-30 1994-10-04 Rockwell International Corporation Telephonic switching system with a user controlled data memory access system and method
US5404464A (en) * 1993-02-11 1995-04-04 Ast Research, Inc. Bus control system and method that selectively generate an early address strobe
US5564027A (en) * 1995-04-20 1996-10-08 International Business Machines Corporation Low latency cadence selectable interface for data transfers between busses of differing frequencies
JP4084428B2 (ja) * 1996-02-02 2008-04-30 富士通株式会社 半導体記憶装置
US6279077B1 (en) * 1996-03-22 2001-08-21 Texas Instruments Incorporated Bus interface buffer control in a microprocessor
US7669027B2 (en) * 2004-08-19 2010-02-23 Micron Technology, Inc. Memory command delay balancing in a daisy-chained memory topology

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4309691A (en) * 1978-02-17 1982-01-05 California Institute Of Technology Step-oriented pipeline data processing system
US4344132A (en) * 1979-12-14 1982-08-10 International Business Machines Corporation Serial storage interface apparatus for coupling a serial storage mechanism to a data processor input/output bus
US4398176A (en) * 1980-08-15 1983-08-09 Environmental Research Institute Of Michigan Image analyzer with common data/instruction bus
US4395698A (en) * 1980-08-15 1983-07-26 Environmental Research Institute Of Michigan Neighborhood transformation logic circuitry for an image analyzer system
US4395700A (en) * 1980-08-15 1983-07-26 Environmental Research Institute Of Michigan Image analyzer with variable line storage
US4785415A (en) * 1986-08-29 1988-11-15 Hewlett-Packard Company Digital data buffer and variable shift register
US4876644A (en) * 1987-10-30 1989-10-24 International Business Machines Corp. Parallel pipelined processor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
US-Buch: K.Hwang, F.A. Briggs, Computer Architec- ture and parallel Procersing, Mc Gravo Hill Book Company, 1984, S. 193-196, S. 517-525 und S. 732-755 *
US-Z.: "Computer-Design", 1. Sept. 1985, S. 83-86 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19534637A1 (de) * 1995-09-19 1997-03-20 Winfried Gehrke Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren

Also Published As

Publication number Publication date
US5043883A (en) 1991-08-27

Similar Documents

Publication Publication Date Title
DE19882418B4 (de) System einer quellensynchronen Schnittstelle zwischen Master- und Slave-Einrichtungen und zugehöriges Verfahren
DE69826863T2 (de) Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet
DE2855673C2 (de)
DE3204905C2 (de)
DE3914265C2 (de)
DE3110196A1 (de) Datenverarbeitungssystem
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE3834227A1 (de) Mikrocomputer
DE3842517A1 (de) Pipeline-datenverarbeitungssystem
DE1915818B2 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
CH626484A5 (de)
DE3732798A1 (de) Datenverarbeitungssystem mit ueberlappendem zugriff auf einen globalen speicher durch eine quelle mit hoher prioritaet
DE2912073C2 (de)
DE2933474A1 (de) Anordnung fuer den informationsaustausch zwischen den speichern einer datenverarbeitungsanlage und den diese bildenden verarbeitungseinrichtungen
DE2750344C2 (de) Logikschaltung zum Betätigen irgendeiner Teilmenge einer Mehrzahl von Vorrichtungen
EP0134831A1 (de) Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung
DE3911721C2 (de)
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
EP0104490A2 (de) Verfahren und Vorrichtung zur Synchronisation von Datenverarbeitungsanlagen
DE4114053A1 (de) Computersystem mit cachespeicher
DE69432693T2 (de) Schnitstelle zwischen unsynchronisierten Geräten
DE2609698C2 (de) Elektronischer Rechner
DE1916970A1 (de) Schaltungsanordnung zur Steuerung des Datenflusses zwischen einer schnellen Datenverarbeitungseinheit und langsamen Speicher- oder Ein- und Ausgabeeinheiten
DE2610428C3 (de) Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8128 New person/name/address of the agent

Representative=s name: STREHL, P., DIPL.-ING. DIPL.-WIRTSCH.-ING. SCHUEBE

8131 Rejection