DE4100621A1 - Multirechnersystem - Google Patents

Multirechnersystem

Info

Publication number
DE4100621A1
DE4100621A1 DE19914100621 DE4100621A DE4100621A1 DE 4100621 A1 DE4100621 A1 DE 4100621A1 DE 19914100621 DE19914100621 DE 19914100621 DE 4100621 A DE4100621 A DE 4100621A DE 4100621 A1 DE4100621 A1 DE 4100621A1
Authority
DE
Germany
Prior art keywords
signal
control circuit
data
computing element
computing
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.)
Withdrawn
Application number
DE19914100621
Other languages
English (en)
Inventor
Joachim Schmidt
Thomas Dr Wendler
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.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE19914100621 priority Critical patent/DE4100621A1/de
Publication of DE4100621A1 publication Critical patent/DE4100621A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies

Description

Die Erfindung betrifft ein Multirechnersystem mit einer Anzahl Rechenelemente, die einen Datenstrom je nach eigenen, voneinander unabhängig ablaufenden Programmen verarbeiten, wobei wenigstens ein Teil der Rechenelemente bezüglich des Datenstroms in Reihe geschaltet ist und jeweils ein Rechenelement wenigstens einen Teil der Ergebnisse des in der Reihe vorhergehenden Rechenelements zur Weiterverarbeitung aufnimmt, wobei ferner Steuer­ schaltungen vorgesehen sind, die wenigstens ein die Gültigkeit von vom Rechenelement abzugebenden Daten angebendes Gültigkeitssignal empfangen und wenigstens ein die Abgabe weiterer Daten vom Rechenelement verhinderndes Stopsignal erzeugen.
Ein derartiges Rechnersystem, das auch als Fließband- System bezeichnet wird, ist bekannt beispielsweise aus der WO 80/00 043. Dabei sind die einzelnen Steuerschaltungen zwischen den Rechenelementen angeordnet und empfangen von dem Daten abgebenden Rechenelement ein Signal, wenn dieses Rechenelement Daten abgeben will, das somit als Gültig­ keitssignal für die abzugebenden Daten bezeichnet werden kann, und wenn diese abzugebenden Daten nicht in ein zwischen den Rechenelementen angeordnetes Datenregister übernommen werden können, weil dieses noch gefüllt ist, wird ein Stopsignal an dieses Rechenelement abgegeben. Das Gültigkeitssignal dient ferner dazu, in der Steuer­ schaltung eine bistabile Kippstufe zu setzen und ein Steuersignal für das Einschreiben von Daten in das Datenregister zu erzeugen. Das folgende, die Daten aufnehmende und verarbeitende Rechenelement erhält ein Stopsignal, wenn die Kippstufe anzeigt, daß das Daten­ register leer ist und dieses folgende Rechenelement Daten benötigt.
Diese Anordnung hat u. a. den Nachteil, daß nur mit jedem zweiten Taktsignal gültige Daten abgegeben werden können, denn die Kippstufe in der Steuerschaltung muß durch ein Taktsignal erst wieder zurückgestellt werden, bevor es mit dem folgenden Taktsignal wieder gesetzt werden kann, wobei dann erst ein Einschreibsignal für das Datenregister erzeugt werden kann. Wenn ein Rechenelement rein kombinatorisch aufgebaut ist, geht dadurch dann stets ein Taktzyklus in der Zeit verloren. Ferner ist es dadurch nicht möglich, die ganze Reihe von Rechenelementen dicht mit Daten zu füllen. Ferner kann eine Stopbedingung vom Ausgang der Reihe von Rechenelementen nur langsam zum Eingang durchgegeben werden. Schließlich müssen von den Rechenelementen auch die Gültigkeitssignale erzeugt und die Stopsignale verarbeitet werden, wofür zusätzlicher Aufwand in jedem Rechenelement am Eingang und am Ausgang erforderlich ist.
Aufgabe der Erfindung ist es daher, ein Multirechnersystem der eingangs genannten Art anzugeben, bei dem ein schneller Durchlauf der Daten und ein weitgehend modularer Aufbau ermöglicht ist.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß jedem Rechenelement wenigstens eine eigene Steuerschaltung zugeordnet ist, die sowohl der Steuerschaltung des in der Reihe unmittelbar vorhergehenden Rechenelements das Stopsignal zuführt und von dieser das Gültigkeitssignal empfängt als auch der Steuerschaltung des in der Reihe unmittelbar nachfolgenden Rechenelements das Gültigkeits­ signal zuführt und von dieser das Stopsignal empfängt, wobei das empfangene Gültigkeitssignal und das empfangene Stopsignal die Erzeugung des abgegebenen Gültigkeits­ signals und des Stopsignals beeinflussen, und daß die Rechenelemente untereinander nur über den Datenstrom führende Datenleitungen verbunden sind.
Auf diese Weise sind die einzelnen Rechenelemente von jeglichem Steuerungsaufwand für das Aufnehmen und Weitergeben von Daten in der Reihe befreit, sondern dies findet ausschließlich in den Steuerschaltungen statt. Dadurch, daß jede Steuerschaltung mit der vorhergehenden und nachfolgenden Steuerschaltung direkt in Verbindung steht, ist eine sehr schnelle Steuerung möglich, beispielsweise kann bei rein kombinatorischen Rechen­ elementen mit jedem Takt ein Datenwort verarbeitet und weitergeschoben werden. Ferner ist dadurch, daß jeweils ein Rechenelement und eine Steuerschaltung zusammengehören und die Rechenelemente nur über ihre Datenleitungen verbunden sind und die Steuerschaltungen stets über Steuerleitungen mit gleicher Bedeutung miteinander verbunden sind, ein einfaches Zusammenschalten solcher Einheiten aus Steuerschaltung und Rechenelement möglich.
Es kommt vor, daß in einem Multirechnersystem die einzelnen Rechenelemente bezüglich des Datenstroms nicht nur einfach in einer linearen Reihe zusammengeschaltet sind, sondern daß dabei auch Verzweigungen und Vereini­ gungen von Datenströmen auftreten. Bei einem derartigen Rechnersystem, wobei wenigstens ein Rechenelement von mehreren anderen vorangehenden Rechenelementen Daten direkt empfängt und/oder an mehrere andere nachfolgende Rechenelemente direkt Daten abgibt, ist eine Ausgestaltung der Erfindung dadurch gekennzeichnet, daß die Steuer­ schaltung wenigstens eines Rechenelements, das von mehreren vorangehenden Rechenelementen Daten direkt empfängt, einen eigenen Ausgang für ein Stopsignal für jede der diesen vorangehenden Rechenelementen zugeordneten Steuerschaltungen sowie einen eigenen Eingang für ein besonderes Gültigkeitssignal von jeder dieser Steuer­ schaltungen aufweist, und daß die Steuerschaltung wenigstens eines Rechenelements, das an mehrere nach­ folgende Rechenelemente Daten direkt abgibt, einen eigenen Eingang für ein Stopsignal von jeder der diesen nach­ folgenden Rechenelementen zugeordneten Steuerschaltungen sowie einen gemeinsamen Ausgang für das wenigstens eine Gültigkeitssignal für alle diese Steuerschaltungen auf­ weist. Im ersteren Falle der Vereinigung von Datenströmen sind die Ausgänge für die einzelnen Stopsignale notwendig, da jedes vorangehende Rechenelement erst dann ein Stopsignal erhalten soll, wenn es zu verarbeitende Daten fertig verarbeitet am Ausgang abgeben kann und demzufolge ein entsprechendes Gültigkeitssignal abgibt. Dies ist ein besonderes Gültigkeitssignal, das erhalten bleibt, auch wenn das Rechenelement, an dem die Datenströme zusammen­ laufen, Stopsignale aussendet. Entsprechend ist im zweiten Fall bei einer Datenstromverzweigung für jedes nach­ folgende Rechenelement ein eigener Eingang für ein Stopsignal notwendig, um eine einwandfreie Verarbeitung zu gewährleisten, wie später erläutert wird.
An sich könnten insbesondere bei Rechenelementen, die rein kombinatorisch aufgebaut sind und die Verarbeitung somit in einem Schritt durchführen, Taktsignale ganz erübrigt werden. Dies führt jedoch leicht zu Laufzeitproblemen, so daß eine Taktsteuerung mit taktgesteuerten Registern zweckmäßiger ist, wie allgemein bekannt ist. Eine entsprechende Ausgestaltung der Erfindung für ein Multirechnersystem mit einer Quelle für ein Taktsignal ist dafür dadurch gekennzeichnet, daß in Reihe mit jedem Rechenelement wenigstens ein taktgesteuertes Datenregister geschaltet ist und jede Steuerschaltung ein Schreibsteuer­ signal für das Datenregister des zugeordneten Rechen­ elements erzeugt, und daß jede Steuerschaltung eine taktgesteuerte Kippstufe enthält, aus deren Ausgangssignal das wenigstens eine Gültigkeitssignal abgeleitet ist und für die ein Vorbereitungssignal aus den empfangenen Stopsignalen und Gültigkeitssignalen und dem Ausgangs­ signal dieser Kippstufe erzeugt wird. Auf diese Weise kann bei maximaler Verarbeitungsgeschwindigkeit, d. h. insbesondere bei rein kombinatorischen Rechenelementen, mit jedem Taktsignal ein Rechenschritt durchgeführt werden.
Abhängig von dem Verarbeitungsvorgang, dem die Daten in den einzelnen Rechenelementen unterworfen werden, kann die Zeitdauer dieses Verarbeitungsvorgangs sehr unterschied­ lich sein und sogar bei ein und demselben Rechenelement bei verschiedenen Daten ebenfalls variieren. Diese unterschiedlichen Zeitdauern des Verarbeitungsvorganges können in der Steuerschaltung bei der Erzeugung der Gültigkeitssignale und Stopsignale entsprechend berücksichtigt werden, wobei dann Steuerinformationen aus dem Rechenelement der zugeordneten Steuerschaltung zuge­ führt werden müssen. Eine günstige Lösung im Sinne einer Vereinfachung des Aufbaues der Steuerschaltung ist nun erfindungsgemäß dadurch gekennzeichnet, daß insbesondere für Rechenelemente, die für einen vollständigen Verarbeitungsvorgang der zugeführten Daten unterschied­ liche Zeitspannen benötigen, zwei Steuerschaltungen vorgesehen sind, von denen die eine Steuerschaltung an wenigstens eine vorhergehende Steuerschaltung ein Stopsignal abgibt und ein Gültigkeitssignal empfängt und an das Rechenelement ein Gültigkeitssignal abgibt, das den Verarbeitungsvorgang in dem Rechenelement freigibt, und von dem Rechenelement ein Stopsignal empfängt, die andere Steuerschaltung an wenigstens eine nachfolgende Steuer­ schaltung ein Gültigkeitssignal abgibt und ein Stopsignal empfängt und von dem Rechenelement nach Durchführung eines Verarbeitungsvorganges ein Gültigkeitssignal empfängt und an das Rechenelement ein Stopsignal abgibt, das den Beginn eines Verarbeitungsvorganges vorrangig verhindert. Auf diese Weise ist dem Rechenelement eine Steueranordnung aus zwei Steuerschaltungen zugeordnet, die sich jedoch gegen­ über der vorhergehenden und der folgenden Steuerschaltung ebenso verhalten, als wäre nur eine Steuerschaltung für das betreffende Rechenelement vorhanden, während intern zwischen der Steuerschaltung und dem Rechenelement die entsprechenden Signale ausgetauscht werden wie zwischen Steuerschaltungen untereinander. Eine solche Ausführung ist insbesondere für taktgesteuerte Rechenelemente, die für einen Verarbeitungsvorgang eine größere und möglicher­ weise auch eine datenabhängig unterschiedliche Anzahl von Taktphasen benötigen, günstig.
In diesem Falle ist es ferner günstig, daß dem Rechen­ element ein erstes taktgesteuertes Datenregister vorge­ schaltet und ein zweites Datenregister nachgeschaltet ist und daß ein Schreibsteuersignal für das erste Daten­ register von der einen Steuerschaltung und für das zweite Datenregister von der anderen Steuerschaltung erzeugt wird. Auf diese Weise wird eine vollständige Entkopplung der aufeinanderfolgenden Rechenelemente bezüglich des Datenstromes erreicht.
Die Steuerschaltungen können entsprechend den Anforde­ rungen, nämlich der Stelle, an der ein Rechenelement eingesetzt wird, jeweils speziell ausgestaltet sein, d. h. eine Steuerschaltung für ein Rechenelement mit einer Vereinigung oder einer Verzweigung von Datenströmen kann anders aufgebaut sein als eine Steuerschaltung für ein Rechenelement in einer linearen Konfiguration. Diese Unterschiede sind jedoch gering, so daß es nach einer weiteren Ausgestaltung der Erfindung zweckmäßig ist, daß alle Steuerschaltungen untereinander gleich mit mehreren Ausgängen für jeweils ein Stopsignal und mit zwei Ausgängen für ein Gültigkeitssignal sowie mit mehreren Eingängen für je ein Gültigkeitssignal und je ein Stopsignal aufgebaut sind, wobei jede Steuerschaltung ferner einen weiteren Eingang als Konfigurationseingang aufweist und ein Konfigurationssignal an diesem Eingang angibt, ob das zugeordnete Rechenelement von mehreren vorangehenden Rechenelementen Daten direkt empfängt. Auf diese Weise kann jedes Rechenelement mit der zugehörigen Steuerschaltung an einer beliebigen Stelle innerhalb des Netzwerkes des Multirechnersystems eingesetzt werden, wie es der durchzuführende Algorithmus gerade erfordert, ohne daß dafür die Steuerschaltung jeweils speziell geändert werden müßte. Dabei erhalten nicht verwendete Eingänge der Steuerschaltung ein Potential entsprechend einem nicht vorhandenen Gültigkeitssignal bzw. Stopsignal. Bei einer festgelegten Struktur des Multirechnersystems kann auch das Konfigurationssignal ein fest verdrahtetes Potential sein.
Ausführungsbeispiele der Erfindung werden nachstehend anhand der Zeichnung näher erläutert. Es zeigt
Fig. 1 eine verzweigte Struktur der Zusammenschaltung von einzelnen Rechenelementen,
Fig. 2 die drei vorkommenden Fälle für die Eingangs- und Ausgangsverbindungen eines Rechenelements,
Fig. 3 ein Rechenelement mit einer Steuerschaltung mit mehreren Eingängen und Ausgängen sowie einem Datenregister,
Fig. 4 ein Rechenelement mit zwei Steuerschaltungen,
Fig. 5 den inneren Aufbau einer Steuerschaltung.
Die in Fig. 1 gezeigte Anordnung aus einer Anzahl Einheiten 10 bis 30 aus jeweils einer Steuerschaltung und einem Rechenelement stellt vorzugsweise einen Ausschnitt aus einem größeren Netzwerk dar. Bei jeder Einheit stellt der untere Block das Rechenelement dar, wobei die Rechenelemente untereinander nur über die dick ausge­ zogenen Datenleitungen miteinander verbunden sind, die vorzugsweise ein Datenwort parallel in einer Richtung übertragen, wie bei der Einheit 10 bei den Daten­ leitungen 50 und 52 angedeutet ist. Die oberen Blöcke jeder der Einheiten 10 bis 30 stellen die Steuerschaltung dar, die über Steuerleitungen wie beispielsweise die Steuerleitungen 54 zwischen den Einheiten 10 und 11 mit­ einander verbunden sind. Von diesen beiden Steuerleitungen führt die eine von der Einheit 10 zur Einheit 11 und die andere in entgegengesetzter Richtung, wie später noch weiter erläutert wird. Es können jedoch auch mehr Steuerleitungen vorhanden sein, wie beispielsweise das Steuerleitungsbündel 55 am Eingang des oberen Blocks der Einheit 18 oder das Steuerleitungsbündel 56 am Ausgang des oberen Blocks der Einheit 25.
Dies hängt davon ab, ob sich am Eingang einer Einheit mehrere Datenströme vereinigen oder sich am Ausgang verzweigen. Beispielsweise werden am Eingang der Einheit 18 drei Datenströme, die aus den Einheiten 16, 17 und 25 kommen, vereinigt. Derartige Vereinigungen von Datenströmen treten auch am Eingang der Einheit 13 sowie am Eingang der Einheit 24 auf. Eine Verzweigung von Datenströmen tritt beispielsweise am Ausgang der Einheit 25 auf, deren Datenausgang zu den Einheiten 18 und 26 führt. Entsprechende Verzweigungen treten auch am Ausgang der Einheiten 19, 20 und 28 auf.
Bei der in Fig. 1 dargestellten Anordnung sind weitere an sich erforderliche Steuerleitungen, die für die Erfindung nicht von Bedeutung sind, wie beispielsweise wenigstens eine Taktleitung sowie eine Rücksetzleitung und insbe­ sondere auch Spannungsversorgungsleitungen, der Übersicht­ lichkeit halber nicht dargestellt.
In Fig. 2 sind die drei verschiedenen Fälle näher angegeben, die bei der Anordnung nach Fig. 1 auftreten können, wobei hier der Einfachheit halber nur die Steuer­ schaltungen dargestellt und die zugehörigen Rechenelemente weggelassen sind.
Fig. 2a zeigt den einfachsten Fall, bei dem weder eine Verzweigung noch eine Vereinigung auftritt, wie beispiels­ weise bei dem Element 11 in Fig. 1. Die Steuerschal­ tung 11a ist hier mit vier Anschlüssen auf der linken Seite dargestellt, nämlich mit den beiden Eingängen QI0 und QI1 sowie den beiden Ausgängen STO0 und STO1, von denen der Eingang QI0 mit einem Ausgang Q0 der vorher­ gehenden Steuerschaltung 10a und der Ausgang STO0 mit einem Eingang STI0 dieser vorhergehenden Steuerschal­ tung 10a verbunden ist. Der weitere Eingang QI1 erhält ein konstantes Potential entsprechend der logischen "0", und der weitere Ausgang STO1 ist offen, d. h. nicht weiter verbunden. Dieser weitere Eingang und weitere Ausgang wird später erläutert.
Auf der rechten Seite ist die Steuerschaltung 11a eben­ falls mit vier Anschlüssen versehen, nämlich zwei Ausgänge Q und Q0, von denen der letztere mit einem Eingang QI0 der folgenden Steuerschaltung 12a verbunden ist, und zwei Eingänge STI0 und STI1, von denen der erstere mit einem Ausgang STO0 der folgenden Steuer­ schaltung 12a verbunden ist. Der erste Ausgang Q ist ebenfalls offen, d. h. nicht weiter verbunden, und der Eingang STI1 erhält ständig ein Potential entsprechend der logischen "0".
Ferner ist am oberen Rand ein weiterer Eingang LCON dar­ gestellt, der hier ständig ein Potential entsprechend dem logischen Wert "1" erhält. Dieses Signal gibt an, daß die Steuerschaltung 11a bzw. die zugehörige Einheit in einer linearen Konfiguration angeordnet ist, wobei also keine Vereinigung von Datenströmen am Eingang und höchstens ein Verzweigen von Datenströmen am Ausgang auftritt.
Die Steuerschaltungen 10a und 12a, von denen hier nur der in diesem Zusammenhang interessierende Teil dargestellt ist, weisen tatsächlich zweckmäßig ebenfalls eine entsprechende Anzahl von Ausgängen bzw. Eingängen auf, jedoch sind hier der Übersichtlichkeit halber nur die­ jenigen Ausgänge und Eingänge angegeben, die für die Verbindung mit der Steuerschaltung 11a verwendet sind. Für die Bedeutung und die genaue Funktion dieser Eingänge und Ausgänge werden später Beispiele angegeben. Hier sei zunächst nur angegeben, daß der Eingang QI0 der Steuer­ schaltung 11a ein Gültigkeitssignal vom Ausgang Q0 der Steuerschaltung 10a empfängt, das angibt, daß die von der zur Steuerschaltung 10a gehörenden, nicht dargestellten Recheneinheit abgegebenen Daten gültig sind. Andererseits wird über den Ausgang STO0 ein Stopsignal abgegeben, wenn das zur Steuerschaltung 11a gehörende Rechenelement momentan beschäftigt ist und vorzugsweise gleichzeitig ein Gültigkeitssignal in der Steuerschaltung 11a eintrifft. Über die Ausgänge Q bzw. Q0 der Steuerschaltung 11 wird ein Signal abgegeben, wenn das zugehörige Rechenelement gültige Daten abgibt, wobei die Unterschiede dieser beiden Ausgänge später erläutert werden. Ein am Eingang STI0 eintreffendes Stopsignal von der Steuerschaltung 12a zeigt an, daß das zur letzteren gehörende Rechenelement momentan keine neuen Daten aufnehmen kann und daß die von dem Rechenelement, das zur Steuerschaltung 11a gehört, abge­ gebenen Daten noch bewahrt werden müssen und noch nicht verlorengehen dürfen. Hieraus ist erkennbar, daß beispielsweise der Eingang QI0 der Steuerschaltung 11a bzw. das Signal darauf die gleiche Bedeutung und Funktion hat wie der Eingang QI0 der Steuerschaltung 12a, und entsprechendes gilt auch für die anderen Eingänge und Ausgänge. Daraus ist erkennbar, daß die Steuerschaltungen untereinander zumindest im Prinzip gleich aufgebaut sind und jeweils eine Einheit aus Steuerschaltung und Rechen­ element an beliebiger Stelle innerhalb eines Netzwerkes eingesetzt werden kann, d. h. mit beliebigen anderen voran­ gehenden und nachfolgenden Rechenelementen verbunden werden kann, da deren Steuerschaltungen stets die gleichen Eingangssignale benötigen bzw. Ausgangssignale abgeben, mit anderen Worten, die eingangsseitige und ausgangs­ seitige Schnittstelle jeder Einheit aus Steuerschaltung und Rechenelement ist grundsätzlich gleich. Dies gilt um so mehr, wenn jede Steuerschaltung zur vorangehenden und zur folgenden Seite jeweils mehrere Ausgänge und Eingänge aufweist, die untereinander gleichberechtigt sind, denn dann kann eine solche Steuerschaltung auch in anderen Konfigurationen eingesetzt werden, wie anhand der Fig. 2b und 2c erläutert werden soll.
In Fig. 2b ist eine Steuerschaltung 13a für den Fall dargestellt, daß an dem zugehörigen Rechenelement zwei Datenströme sich vereinigen, wie dies bei der Einheit 13 in Fig. 1 der Fall ist, wo Datenströme von den Einheiten 12 und 15 zusammenlaufen. Die zugehörigen Steuerschaltungen 12a und 15a sind nun mit ihren Q-Ausgängen mit den Eingängen QI0 und QI1 der Steuer­ schaltung 13a verbunden. Die Ausgänge STO0 und STO1 der Steuerschaltung 13 sind mit dem Eingang STI0 der Steuer­ schaltung 12a bzw. der Steuerschaltung 15a verbunden. Die Ausgänge auf der rechten Seite der Steuerschaltung 13a sind auf gleiche Weise mit der folgenden Steuerschal­ tung 14a verbunden wie bei Fig. 2a für die Steuerschal­ tungen 11a und 12a gezeigt ist. Für den Fall der Vereini­ gung von Datenströmen erhält nun die Steuerschaltung 13a an dem Eingang LCON ständig ein Potential entsprechend der logischen "0".
Über die Eingänge QI0 und QI1 erhält die Steuerschal­ tung 13a jeweils ein Gültigkeitssignal, wenn das Rechen­ element der betreffenden Steuerschaltung gültige Daten abgibt, so daß das Gültigkeitssignal bei den Steuerele­ menten 12a und 15a also zu verschiedenen Zeiten auftreten kann. Wenn nun das eine Gültigkeitssignal auftritt, beispielsweise von der Steuerschaltung 12a, während das andere Gültigkeitssignal noch nicht vorhanden ist, kann das zur Steuerschaltung 13a gehörige Rechenelement noch nicht mit der Verarbeitung beginnen, so daß nun am Ausgang STO0 ein Stopsignal erzeugt werden muß, das die Steuerschaltung 12a anhält, bis die Steuerschaltung 15a ebenfalls ein Gültigkeitssignal abgibt. Diese letztere darf selbstverständlich noch kein Stopsignal empfangen, so daß aus diesem Grunde mehrere Stopsignalausgänge STO0 und STO1 vorhanden sein müssen. Wenn die Steuerschaltung 12a ein Stopsignal am Eingang STI0 empfängt, muß jedoch das Signal am Ausgang Q erhalten bleiben, damit in der Steuerschaltung 13a erkannt werden kann, wann beide Eingänge QI0 und QI1 gleichzeitig ein Gültigkeitssignal empfangen. In dieser Hinsicht ist der Ausgang Q in seiner Funktion etwas anders als der Ausgang Q0, wie im Zusammenhang mit der Fig. 2c noch erläutert wird.
In der Fig. 2c ist nun angenommen, daß sich der Datenstrom vom Ausgang eines Rechenelements auf zwei andere Rechen­ elemente verzweigt, wie dies beispielsweise bei der Einheit 19 in Fig. 1 der Fall ist, wo sich der Datenstrom auf die beiden Einheiten 15 und 20 verzweigt. Dabei empfängt die Einheit 19 Daten nur von der vorhergehenden Einheit 18.
In Fig. 2c ist also die Steuerschaltung 19a mit der Steuerschaltung 18a in gleicher Weise verbunden wie in Fig. 2a die Steuerschaltung 11a mit der Steuerschal­ tung 10a, so daß diese Verbindung hier nicht näher erläutert wird. Da in der Einheit 19 keine Vereinigung von Datenströmen erfolgt, empfängt die Steuerschaltung 19a an dem oberen Eingang LCON ständig ein Potential entsprechend der logischen "1".
Der Eingang QI0 beider Steuerschaltungen 15a und 20a ist nun gemeinsam mit dem Ausgang Q0 der Steuerschaltung 19 verbunden. Die Ausgänge STO0 beider Steuerschaltungen 15a und 20a sind dagegen über getrennte Leitungen mit getrennten Eingängen STI0 und STI1 der Steuerschaltung 19a verbunden. Der Ausgang Q der Steuerschaltung 19a ist hier wie auch bei den Fig. 2a und 2b nicht angeschlossen, da dieser nur benötigt würde, wenn die Einheit 19 ausgangs­ seitig auf eine Datenvereinigung führen würde.
Wenn nun angenommen wird, daß die Steuerschaltung 15a ein Stopsignal am Ausgang STO0 erzeugt, so müssen, wenn von der Einheit 19a nun gültige Daten erzeugt werden und die Steuerschaltung 19a ein Gültigkeitssignal am Ausgang Q0 erzeugt, diese gültigen Daten noch aufbewahrt werden, gleichzeitig jedoch das Gültigkeitssignal am Ausgang Q0 durch das Stopsignal STI0 am Eingang der Steuerschal­ tung 19a beendet werden. Wenn nämlich die Stopbedingung von der Steuerschaltung 15a länger anhält, während das Rechenelement, das zur Steuerschaltung 20a gehört, die vorhergehende Berechnung beendet hat und neue Daten empfangen will, muß verhindert werden, daß durch ein ständig andauerndes Gültigkeitssignal am Eingang QI0 der Steuerschaltung 20a die gültigen Daten mehrfach verwendet werden, d. h. immer wieder als neue gültige Daten angesehen werden. Insofern unterscheidet sich die Funktion des Ausgangs Q0 von der Funktion des Ausgangs Q und dem Signal darauf, denn am Ausgang Q soll ein eventuell auftretendes Gültigkeitssignal erhalten bleiben, wenn ein Stopsignal bei der betreffenden Steuerschaltung eingeht, wie anhand der Fig. 2b erläutert wurde. Außerdem sind aus diesem Grund getrennte Steuereingänge STI0 und STI1 erforderlich.
In Fig. 3 ist der Aufbau einer der in Fig. 1 dargestellten Einheit, beispielsweise der Einheit 10, etwas näher dargestellt. Dabei wird auch davon ausgegangen, daß es sich um ein taktsynchrones System handelt, bei dem Zustandsänderungen zumindest nach außerhalb jeweils nur mit einem Taktsignal auftreten, das über einen Eingang 46 zugeführt wird. Ferner ist noch ein Rücksetzsignal RES vorhanden, das über den Eingang 47 beispielsweise nach dem Einschalten des Systems oder bei bestimmten Betriebs­ bedingungen zugeführt wird.
In der Einheit 10 ist nun eine Steuerschaltung 10a mit einer Anzahl Eingängen und Ausgängen, ein Rechene­ lement 10b sowie außerdem ein Datenregister 10c vorhanden. Dem Rechenelement 10b werden über Daten­ leitungen 50 Daten zugeführt, die nach der Verarbeitung über die Datenverbindung 51 auf das Datenregister 10c führen und dort mit dem nächsten Taktsignal auf der Leitung 46 eingeschrieben werden, wenn gleichzeitig ein Freigabesignal über die Leitung 49 von der Steuerschaltung 10a geliefert wird. Nach diesem Taktsignal stehen dann auf der Datenleitung 52 gültige Daten, und gleich­ zeitig wird von der Steuerschaltung 10a am Ausgang Q sowie ggf. Q0 ein Gültigkeitssignal erzeugt. Das Leitungs­ bündel 44 führt also die abgegebenen Gültigkeitssignale, während das Leitungsbündel 43 die eintreffenden Stop­ signale führt. Entsprechend führt das Leitungsbündel 41 die abgegebenen Stopsignale und das Leitungsbündel 42 die eintreffenden Gültigkeitssignale. Hier ist beispielsweise angenommen, daß mehr als zwei eintreffende und abgegebene Stopsignale und eintreffende Gültigkeitssignale vorhanden sind, so daß die Leitungsbündel 41, 42 und 43 eine größere Anzahl von einzelnen Leitungen umfassen, um eine solche Einheit in komplexeren Strukturen mit mehr sich vereini­ genden oder verzweigenden Datenströmen einsetzen zu können. Das Leitungsbündel 44 umfaßt in jedem Falle nur zwei Leitungen.
Das Taktsignal auf der Leitung 46 führt außerdem auf das Rechenelement 10b und die Steuerschaltung 10a, ebenso wie das über die Leitung 47 zugeführte Rücksetzsignal. Die Steuerschaltung 10a empfängt außerdem über den Eingang LCON auf der Leitung 45 ein Steuersignal mit einer Funktion, wie dies anhand der Fig. 2 beschrieben wurde. Ferner ist das Rechenelement 10b noch über wenigstens eine Leitung 48 mit der Steuerschaltung 10a verbunden, über die Steuersignale ausgetauscht werden. Zu diesen kann insbesondere bei einem Rechenelement mit sequentiellen Schaltungen, das für die Verarbeitung von Daten mehrere Taktphasen benötigt, ein Startsignal für den Beginn eines Verarbeitungsvorgangs gehören, beispielsweise abhängig von den Steuersignalen, die die Steuerschaltung empfängt, und es kann von dem Rechenelement auch die Tatsache, ob ein Verarbeitungsvorgang abläuft oder beendet ist, an die Steuerschaltung gemeldet werden. Ein weiteres Steuersignal von dem Rechenelement kann beispielsweise angeben, daß die soeben erzeugten Daten dem folgenden Rechenelement mehr­ mals unverändert nacheinander zugeführt werden, wie es beispielsweise bei bestimmten Transformationskodierungen von Bilddaten vorkommt.
Eine Möglichkeit, Rechenelemente mit sequentiellen Schaltungen, die für einen Verarbeitungsvorgang mehrere Taktphasen benötigen, günstig zu steuern, ist in Fig. 4 dargestellt. Dort ist eine Einheit 60 angegeben, die im wesentlichen ein Rechenelement 64, beispielsweise einen Microprozessor, und zwei Steuerschaltungen 62a und 62b enthält. Nach außerhalb verhält sich die Einheit 60 im wesentlichen gleich wie die Einheit 10 in Fig. 3, nämlich es führt ein Leitungsbündel 41 heraus, über das Stop­ signale an vorhergehende Einheiten abgegeben werden, und es führt ein Leitungsbündel 42 für Gültigkeitssignale von vorhergehenden Einheiten hinein. Entsprechend führen ein Leitungsbündel 43 für Stopsignale von nachfolgenden Einheiten hinein und zwei Leitungen 44 für Gültigkeits­ signale für nachfolgende Einheiten heraus. Ferner ist ein Eingang 45 LCON vorhanden, über den eingestellt wird, ob die betreffende Einheit 60 Datenströme von mehreren vorhergehenden Einheiten vereinigt, und außerdem ist eine Leitung 46 für ein Taktsignal sowie eine Leitung 47 für ein Rücksetzsignal RES vorhanden.
Die Leitungsbündel 41 und 42 sind mit den entsprechenden Ausgängen bzw. Eingängen der Steuerschaltung 62a verbunden, während die Leitungsbündel 43 und 44 mit den entsprechenden Eingängen bzw. Ausgängen der Steuer­ schaltung 62b verbunden sind. Die Leitung 46 für das Taktsignal sowie die Leitung 47 für das Rücksetzsignal führt auf jede der beiden Steuerschaltungen 62a und 62b sowie auf das Rechenelement 64. Die Taktleitung 46 führt ferner noch auf ein Datenregister 66a, das dem Rechen­ element 64 vorgeschaltet ist und die zu verarbeitenden Daten jeweils aufnimmt, wenn außerdem über die Leitung 49a von der Steuerschaltung 62a ein Freigabesignal geliefert wird, und außerdem führt die Taktleitung 46 auf ein zweites Datenregister 66b, das die von dem Rechen­ element 64 verarbeiteten Daten aufnimmt, wenn über die Leitung 49b von der Steuerschaltung 62b ein Freigabesignal abgegeben wird. Der Ausgang des Datenregisters 66b bildet den Datenausgang 52 der Einheit 60.
Das Rechenelement 64 ist über die Leitungen 61 und 63 mit der Steuerschaltung 62a und über die Leitungen 65 und 67 mit der Steuerschaltung 62b sowie über die Leitung 69 mit beiden Steuerschaltungen verbunden. Die Leitung 61 führt auf den Ausgang Q der Steuerschaltung 62a und liefert ein Gültigkeitssignal, wenn das Datenregister 66a gültige Daten eingeschrieben hat und an den Dateneingang des Rechenelements 64 abgibt und dieses somit einen Verarbeitungsvorgang durchführen kann. Die Leitung 63 führt auf einen Stopeingang STI0 der Steuerschaltung 62 und führt ein Signal, wenn das Rechenelement 64 einen Verarbeitungsvorgang ausführt, so daß während dieser Zeit keine neuen gültigen Daten übernommen werden.
Über die Leitung 65 führt das Rechenelement 64 dem Eingang QI0 ein Gültigkeitssignal zu, wenn ein Bearbei­ tungsvorgang abgeschlossen ist und die verarbeiteten Daten in das Datenregister 66b eingeschrieben werden können. Über die Leitung 67 empfängt das Rechenelement 64 vom Ausgang STO0 der Steuerschaltung 62b ein Stopsignal, das den Beginn eines neuen Verarbeitungsvorganges in dem Rechenelement 64 sperrt. Die Leitung 69 führt ein Signal, wenn die im Datenregister 66b enthaltenen Daten mehrmals aufeinanderfolgend unverändert dem nachfolgenden Rechen­ element zugeführt werden sollen. Abgesehen von der Leitung 69 verhält sich das Rechenelement 64 also wie eine Steuerschaltung, die zwischen die beiden Steuerschal­ tungen 62a und 62b eingefügt ist, und die mit diesen Steuerschaltungen ausgetauschten Signale können allgemein einfach in dem Rechenelement erzeugt bzw. von diesem verarbeitet werden.
Wenn aus Gründen des einheitlichen Aufbaues die Steuer­ schaltungen 62a und 62b in der Einheit 60 untereinander gleich und wie die Steuerschaltung 10a in Fig. 3 aufgebaut sind und jeweils mehrere Eingänge für Gültigkeitssignale sowie mehrere Eingänge und Ausgänge für Stopsignale aufweisen, erhalten die weiteren Eingänge STI1 bis STIn für Stopsignale der Steuerschaltung 62a und die weiteren Eingänge QI1 bis QIn für Gültigkeitssignale der Steuer­ schaltung 62b ständig das logische Signal "0".
Ein Beispiel für den Aufbau einer Steuerschaltung, die insbesondere für Rechenelemente mit rein kombinatorischem Aufbau oder für die in Fig. 4 dargestellten Steuer­ schaltungen gut geeignet ist, ist in Fig. 5 dargestellt. Dabei wird von einem taktgesteuerten System ausgegangen, bei dem also jedem Rechenelement mindestens ein takt­ gesteuertes Datenregister zugeordnet ist, das von der Steuerschaltung ein Freigabesignal, das hier mit ENPL bezeichnet wird, auf der Leitung 49 bzw. den Leitungen 49a oder 49b benötigt.
Die in Fig. 5 dargestellte Anordnung geht von einer Steuerschaltung aus, bei der das zugeordnete Rechenelement die Datenströme von maximal zwei vorhergehenden Rechen­ elementen vereinigen kann bzw. den erzeugten Datenstrom auf maximal zwei folgende Rechenelemente verzweigen kann. Es sind also zwei Stopsignaleingänge STI0 und STI1 sowie zwei Eingänge für Gültigkeitssignale QI0 und QI1 vor­ handen, und es werden die Signale für zwei Stopsignal­ ausgänge STO0 und STO1 erzeugt, sowie die Gültigkeits­ signale an den beiden Ausgängen Q und Q0. Eine Erweiterung für mehr Eingänge für Stopsignale und Gültigkeitssignale und entsprechend mehr Ausgänge für Stopsignale läßt sich aus der Systematik des dargestellten Aufbaues leicht ableiten.
Außer den genannten Eingangssignalen werden noch das Signal am Eingang LCON mit der bereits angegebenen Bedeutung und ein Signal STG verwendet, das vom zugeordneten Rechenelement erzeugt wird und angibt, daß die zuletzt vom Rechenelement erzeugten Daten mehrmals nacheinander an das bzw. die folgenden Rechenelemente abgegeben werden sollen, und außerdem wird noch das Rücksetzsignal RES und das Taktsignal auf der Leitung 46 verwendet. Wenn der invertierte Wert eines Signals verwendet werden soll, ist dies durch einen waagerechten Strich über der betreffenden Signalbezeichnung angedeutet.
Das Gültigkeitssignal Q wird am Ausgang eines D-Flipflops 70 erzeugt, wobei das Signal an dessen D-Eingang von einem ODER-Glied 72 erzeugt wird, das die Ausgangssignale einer Anzahl UND-Glieder 74 zusammenfaßt. Das Flipflop 70 wird jeweils mit dem nächsten Taktsignal gesetzt oder zurückgesetzt oder im vorherigen Zustand gehalten, abhängig von dem Signal am D-Eingang.
In entsprechenden Weise übernimmt beispielsweise das Datenregister 10c in Fig. 3 die vom Rechenelement 10b verarbeiteten Daten mit dem nächsten Taktsignal, wenn auf der Leitung 49 das Freigabesignal ENPL erzeugt wird. Dieses wird in Fig. 5 von einem ODER-Glied 76 abgegeben, das die Ausgangssignale einer Anzahl UND-Glieder 78 logisch zusammenfaßt.
Aus dem Gültigkeitssignal Q, das vorher auch als besonderes Gültigkeitssignal bezeichnet wurde und verwendet wird, wenn in der nachfolgenden Steuerschaltung Datenströme vereinigt werden, wird durch Verknüpfung mit verschiedenen Eingangssignalen in den UND-Gliedern 82, deren Ausgangssignale in dem ODER-Glied 80 logisch zusammengefaßt werden, an dessen Ausgang das Gültigkeitssignal Q0 erzeugt. Die Stopsignale für die Ausgänge STO0 und STO1 werden schließlich von den UND-Gliedern 86 und dem ODER-Glied 84 bzw. von den UND-Gliedern 90 und dem ODER-Glied 88 erzeugt, wobei die ODER-Glieder 84 und 88 zusätzlich noch über einen weiteren Eingang das Rücksetzsignal RES erhalten.
Die in Fig. 5 dargestellte Anordnung führt in der Tabelle die nachfolgend angegebenen logischen Funktionen durch, wobei die einzelnen Zeilen der UND-Verknüpfungen in der gleichen Reihenfolge angegeben sind wie die UND-Glieder in Fig. 5.
Tabelle
Die Bedeutung der einzelnen Verknüpfungen, insbesondere der UND-Verknüpfungen, ergibt sich aus der erforderlichen Funktion der einzelnen Signale im Netzwerk der einzelnen Einheiten, wobei hier davon ausgegangen wird, daß die Rechenelemente entweder nur rein kombinatorisch aufgebaut sind oder für Rechenelemente, die mehrere Taktphasen für eine Verarbeitung benötigen, eine Anordnung nach Fig. 4 verwendet wird. Insbesondere ist zu bemerken, daß die Signale D, Q0 und ENPL nur auftreten, wenn kein Rücksetzsignal RES vorliegt, d. h. im normalen Betrieb, während bei einem Rücksetzzustand im jeden Falle die Stopsignale STO0 und ST01 erzeugt werden.
Im übrigen zeigen die ersten beiden Zeilen für das Signal D, daß dieses in der linearen Konfiguration auftritt, wenn einer der beiden Eingänge für Gültigkeits­ signale ein logisches "1"-Signal erhält, d. h. wenn gültige Daten anliegen, wird mit dem nächsten Taktsignal das Gültigkeitssignal Q erzeugt. Die ODER-Verknüpfung besagt, daß es gleichgültig ist, welcher von den unbenutzten Eingänge QI0 oder QI1 mit der vorhergehenden Steuer­ schaltung verbunden wird bzw. fest das logische "0"-Signal erhält. Die dritte Zeile gilt für den Fall, daß das Signal STG vorliegt, das insbesondere vom zugeordneten Rechenelement erzeugt wird und angibt, daß die momentan erzeugten Daten mehrmals nacheinander, d. h. für mehrere Taktphasen, abgegeben werden sollen, so daß das Flipflop 70 entsprechend viele Taktphasen in dem gesetzten Zustand bleibt und die Gültigkeitssignale erzeugt werden. Dies gilt jedoch nur für die lineare Konfiguration, wenn dagegen das zugeordnete Rechenelement mehrere Datenströme vereinigt, steht diese Betriebsart nicht zur Verfügung. Die vierte und fünfte Zeile geben an, daß das Gültigkeits­ signal aufrechterhalten wird, wenn von der nachfolgenden Steuerschaltung oder im Falle der Verzweigung von einer der nachfolgenden Steuerschaltungen ein Stopsignal zugeführt wird. Dies ist von Bedeutung, wenn in wenigstens einer der unmittelbar nachfolgenden Einheiten eine Vereinigung von Datenströmen auftritt, damit dann das Gültigkeitssignal erhalten bleibt und festgestellt werden kann, wann alle Gültigkeitssignale der zu vereinigenden Datenströme gleichzeitig vorliegen. Wie bereits erwähnt, wird das Gültigkeitssignal Q nur in den Fällen direkt verwendet, wenn in der nachfolgenden Einheit eine Vereinigung von Datenströmen auftritt. Die letzte Zeile des Signals D gibt an, daß das Gültigkeitssignal nur erzeugt wird, wenn an beiden Eingängen Gültigkeitssignale empfangen werden. Dies gilt nur, wenn die betreffende Steuerschaltung zu einer Vereinigung von Datenströmen gehört, jedoch kann leicht eingesehen werden, daß diese Bedingung in der letzten Zeile nicht ausdrücklich angegeben sein muß.
Die Verknüpfungen für das Gültigkeitssignal am Ausgang Q0 geben an, daß hieran das Gültigkeitssignal Q erscheint, wenn die betreffende Steuerschaltung zu einer Vereinigung von Datenströmen gehört, oder wenn von keiner der folgenden Steuerschaltungen ein Stopsignal ausgesendet wird. Wenn nämlich unmittelbar nachfolgend eine Verzweigung des Datenstroms auftritt und von einer der folgenden Einheiten ein Stopsignal ausgesendet wird, muß das Gültigkeitssignal Q0 verschwinden, damit die andere Einheit, die kein Stopsignal aussendet, die empfangenen Daten nicht für mehrere aufeinanderfolgende Taktphasen als wiederholte gültige Daten auswertet.
Das Freigabesignal ENPL für das Datenregister wird in der linearen Konfiguration erzeugt, wenn an einem der beiden Eingänge QI0 oder QI1 ein Gültigkeitssignal empfangen wird und wenn gleichzeitig das Gültigkeitssignal für die vorhergehenden Daten nicht mehr vorhanden ist, d. h. die Daten des Datenregisters sind bereits verarbeitet, oder wenn weder ein Stopsignal von einer der folgenden Steuer­ schaltungen eintrifft noch das Signal STG vorhanden ist, das eine wiederholte Abgabe der gleichen Daten fordert. Die Bedingungen der letzten beiden Zeilen werden nur erfüllt, wenn die betreffende Steuerschaltung zu einer Vereinigung von Datenströmen gehört, denn nur dann können beide Eingänge für Gültigkeitssignale gleichzeitig ein Signal führen, und außerdem darf dann kein Stopsignal von einer folgenden Steuerschaltung kommen, oder das Gültig­ keitssignal ist nicht mehr vorhanden, d. h. der Inhalt des Datenregisters war bereits verarbeitet.
Ein Stopsignal am Stopausgang STO0 wird außer bei einem Rücksetzsignal auch erzeugt, wenn an einem der Eingänge STI0 oder STI1 ein Stopsignal empfangen wird und gleichzeitig das Gültigkeitssignal Q vorhanden ist, d. h. das betreffende Rechenelement hat verarbeitete Daten zur Verfügung, jedoch können diese nicht vom folgenden Rechen­ element übernommen werden, so daß das hier betrachtete Rechenelement auch keine neuen Daten momentan empfangen kann. Die Verknüpfung in der vierten Zeile gibt an, das gebildete Daten (Gültigkeitssignal Q ist vorhanden) wiederholt nacheinander an die folgende Einheit übertragen werden sollen, solange das Signal STG vorliegt, und während dieser Zeit kann das betreffende Rechenelement keine neuen Daten empfangen. Diese Bedingungen sind für alle Stopsignalausgänge gleich, lediglich die letzte Zeile ist jeweils unterschiedlich. Ein Stopsignal wird am Ausgang STO0 nämlich erzeugt, wenn die betreffende Steuer­ schaltung zu einer Vereinigung von Datenströmen gehört und von einer vorhergehenden Einheit am Eingang QI0 ein Gültigkeitssignal geliefert wird, während die weitere Einheit, deren Datenstrom hier vereinigt wird, noch kein Gültigkeitssignal am Eingang QI1 liefert. In diesem Falle muß die eine Einheit, die mit dem Ausgang STO0 verbunden ist, ein Stopsignal empfangen, während die andere Einheit noch weiterarbeiten muß.
Auf diese Weise werden stets, also auch im Falle von Vereinigung und Verzweigung von Datenströmen, die richtigen Signale erzeugt, so daß die Steuerschaltungen untereinander, ohne daß eine übergeordnete Steuerung erforderlich ist, die korrekte Verarbeitung des Daten­ stroms automatisch steuern.
Die in Fig. 1 dargestellte Anordnung enthält für jedes Ausgangssignal (außer für das Gültigkeitssignal Q) eine nur zweistufige kombinatorische Anordnung, die die kürzeste Durchlaufzeit für Signale aufweist. Eine gewisse Einsparung kann dadurch erzielt werden, daß einzelne Terme von einigen Verknüpfungen zusammengefaßt werden, jedoch entstehen dann mehrstufige kombinatorische Netzwerke für das betreffende Ausgangssignal, was gelegentlich auch nachteilig sein kann. Dies ist jedoch eine Frage der technischen Realisierung des angegebenen Prinzips.

Claims (6)

1. Multirechnersystem mit einer Anzahl Rechenelemente, die einen Datenstrom je nach eigenen, voneinander unab­ hängig ablaufenden Programmen verarbeiten,
wobei wenigstens ein Teil der Rechenelemente bezüglich des Datenstroms in Reihe geschaltet ist und jeweils ein Rechenelement wenigstens einen Teil der Ergebnisse des in der Reihe vorhergehenden Rechenelements zur Weiter­ verarbeitung aufnimmt,
wobei ferner Steuerschaltungen vorgesehen sind, die wenigstens ein die Gültigkeit von vom Rechenelement abzugebenden Daten angebendes Gültigkeitssignal empfangen und wenigstens ein die Abgabe weiterer Daten vom Rechen­ element verhinderndes Stopsignal erzeugen, dadurch gekennzeichnet,
daß jedem Rechenelement wenigstens eine eigene Steuer­ schaltung zugeordnet ist, die sowohl der Steuerschaltung des in der Reihe unmittelbar vorhergehenden Rechenelements das Stopsignal zuführt und von dieser das Gültigkeits­ signal empfängt als auch der Steuerschaltung des in der Reihe unmittelbar nachfolgenden Rechenelements das Gültigkeitssignal zuführt und von dieser das Stopsignal empfängt,
wobei das empfangene Gültigkeitssignal und das empfangene Stopsignal die Erzeugung des abgegebenen Gültigkeits­ signals und des Stopsignals beeinflussen, und
daß die Rechenelemente untereinander nur über den Daten­ strom führende Datenleitungen verbunden sind.
2. Multirechnersystem nach Anspruch 1, wobei wenigstens ein Rechenelement von mehreren anderen vorangehenden Rechenelementen Daten direkt empfängt und/oder an mehrere andere nachfolgende Rechenelemente direkt Daten abgibt, dadurch gekennzeichnet,
  • - daß die Steuerschaltung wenigstens eines Rechenelements, das von mehreren vorangehenden Rechenelementen Daten direkt empfängt, einen eigenen Ausgang für ein Stop­ signal für jede der diesen vorangehenden Rechenelementen zugeordneten Steuerschaltungen sowie einen eigenen Eingang für ein besonderes Gültigkeitssignal von jeder dieser Steuerschaltungen aufweist, und
  • - daß die Steuerschaltung wenigstens eines Rechenelements, das an mehrere nachfolgende Rechenelemente Daten direkt abgibt, einen eigenen Eingang für ein Stopsignal von jeder der diesen nachfolgenden Rechenelementen zugeord­ neten Steuerschaltungen sowie einen gemeinsamen Ausgang für das wenigstens eine Gültigkeitssignal für alle diese Steuerschaltungen aufweist.
3. Multirechnersystem nach Anspruch 1 oder 2 mit einer Quelle für ein Taktsignal, dadurch gekennzeichnet, daß in Reihe mit jedem Rechenelement wenigstens ein taktgesteuertes Datenregister geschaltet ist und jede Steuerschaltung ein Schreibsteuersignal für das Daten­ register des zugeordneten Rechenelements erzeugt, und daß jede Steuerschaltung eine taktgesteuerte Kippstufe enthält, aus deren Ausgangssignal das wenigstens eine Gültigkeitssignal abgeleitet ist und für die ein Vorbereitungssignal aus den empfangenen Stopsignalen und Gültigkeitssignalen und dem Ausgangssignal dieser Kipp­ stufe erzeugt wird.
4. Multirechnersystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß insbesondere für Rechenelemente, die für einen voll­ ständigen Verarbeitungsvorgang der zugeführten Daten unterschiedliche Zeitspannen benötigen, zwei Steuer­ schaltungen vorgesehen sind,
von denen die eine Steuerschaltung an wenigstens eine vorhergehende Steuerschaltung ein Stopsignal abgibt und ein Gültigkeitssignal empfängt und an das Rechenelement ein Gültigkeitssignal abgibt, das den Verarbeitungsvorgang in dem Rechenelement freigibt, und von dem Rechenelement ein Stopsignal empfängt,
die andere Steuerschaltung an wenigstens eine nachfolgende Steuerschaltung ein Gültigkeitssignal abgibt und ein Stopsignal empfängt und von dem Rechenelement nach Durch­ führung eines Verarbeitungsvorganges ein Gültigkeitssignal empfängt und an das Rechenelement ein Stopsignal abgibt, das den Beginn eines Verarbeitungsvorganges vorrangig verhindert.
5. Multirechnersystem nach Ansprüchen 3 und 4, dadurch gekennzeichnet, daß dem Rechenelement ein erstes taktgesteuertes Daten­ register vorgeschaltet und ein zweites Datenregister nachgeschaltet ist und daß ein Schreibsteuersignal für das erste Datenregister von der einen Steuerschaltung und für das zweite Datenregister von der anderen Steuerschaltung erzeugt wird.
6. Multirechnersystem nach einem der vorhergehenden Ansprüche dadurch gekennzeichnet,
daß alle Steuerschaltungen untereinander gleich mit mehreren Ausgängen für jeweils ein Stopsignal und mit zwei Ausgängen für ein Gültigkeitssignal sowie mit mehreren Eingängen für je ein Gültigkeitssignal und je ein Stop­ signal aufgebaut sind,
wobei jede Steuerschaltung ferner einen weiteren Eingang als Konfigurationseingang aufweist und ein Konfigurations­ signal an diesem Eingang angibt, ob das zugeordnete Rechenelement von mehreren vorangehenden Rechenelementen Daten direkt empfängt.
DE19914100621 1991-01-11 1991-01-11 Multirechnersystem Withdrawn DE4100621A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19914100621 DE4100621A1 (de) 1991-01-11 1991-01-11 Multirechnersystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19914100621 DE4100621A1 (de) 1991-01-11 1991-01-11 Multirechnersystem

Publications (1)

Publication Number Publication Date
DE4100621A1 true DE4100621A1 (de) 1992-07-16

Family

ID=6422831

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19914100621 Withdrawn DE4100621A1 (de) 1991-01-11 1991-01-11 Multirechnersystem

Country Status (1)

Country Link
DE (1) DE4100621A1 (de)

Similar Documents

Publication Publication Date Title
DE3300261C2 (de)
EP1329816B1 (de) Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
EP0743595B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Software
DE3300260C2 (de)
DE3035718C2 (de) Signalprozessoranordnung mit Bedingungsunterbrechungseinheit
EP0048767A1 (de) Prioritätsstufengesteuerte Unterbrechungseinrichtung
EP0807883B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen
DE3106862C2 (de) Prioritätszuteilschaltungsanordnung
DE2825190C3 (de) Programmierbare logische Anordnung
DE2003150C3 (de) Prioritätsschaltung
DE3400464A1 (de) Datenuebertragungssystem
DE60221515T2 (de) Speichersystem für schleifenbeschleunigung nach wunsch
DE1574877B1 (de) Verfahren und Einrichtung zur Kopplung von datenverarbeitenden Anlagen
DE102007034684A1 (de) Verfahren zum Betrieb eines Multiprozessorsystems, insbesondere im Zusammenhang mit einem medizinischen bildgebenden System
EP0113379A1 (de) Rechnerkopplung
DE4100621A1 (de) Multirechnersystem
DE10300030A1 (de) DMA-Modul und Betriebsverfahren hierfür
AT383221B (de) Rekonfigurierbares verbindungsnetzwerk
DE102006028939B4 (de) Programm-Pipelining-Verfahren zum Verarbeiten von Streaming-Daten in medizinischen Bildverarbeitungssystemen
DE3407870C1 (de) Verfahren und Schaltungsanordnung zum Einleiten einer Datenuebertragungsverbindung
EP0303065B1 (de) Verfahren und Schaltungsanordnung für Halbleiterbausteine mit in hochintegrierter Schaltkreistechnik zusammengefassten logischen Verknüpfungsschaltungen
DE4230178B4 (de) Verfahren zum automatischen Bestimmen der Reihenfolge der Signalbearbeitung in einem sequentiell arbeitenden Bausteinsystem
DE19952545C2 (de) Synchronisation der Datenbestände von redundanten Speichervorrichtungen
WO2024074293A1 (de) Rechenvorrichtung, verfahren zur lastverteilung für eine solche rechenvorrichtung und computersystem
DE3142665A1 (de) Verfahren und vorrichtung zum festlegen einer rotierenden prioritaet in einer modulkette

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee