DE2946119C2 - Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wird - Google Patents
Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wirdInfo
- Publication number
- DE2946119C2 DE2946119C2 DE2946119A DE2946119A DE2946119C2 DE 2946119 C2 DE2946119 C2 DE 2946119C2 DE 2946119 A DE2946119 A DE 2946119A DE 2946119 A DE2946119 A DE 2946119A DE 2946119 C2 DE2946119 C2 DE 2946119C2
- Authority
- DE
- Germany
- Prior art keywords
- parity
- data processing
- data
- processing elements
- elements
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8023—Two dimensional arrays, e.g. mesh, torus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
- Hardware Redundancy (AREA)
Description
tungselemente sind miteinander in vertikaler Richtung
in der gleichen Weise wie die Datenverarbeitungselemente PE verbunden. Sie sind jedoch mit den
benachbarten Elementen in der horizontalen Richtung nicht verkettet Der Zweck der Paritätsverarbeitungselemente
PPE besteht darin, Paritäisbits für die Datenverarbeitungselemente PE zu speichern und zu
manipulieren, wie im einzelnen noch erläutert wird. Der Betrieb der Anordnung wird durch einen Satz von
Signalen gesteuert, die an alle Verarbeitungselemente (PE und PPE) in der Anordnung übertragen werden, so
daß jedes Element genau die gleichen Steuersignale aufnimmt Durch einen Satz von Spaltendatenleitern
CD (einer pro Spalte) und einen Satz von Reihenauswählleitern
/?S(einer pro Reihe) kann auch Information
in die Anordnung eingegeben werden. Die Art und Weise, in der die Steuersignale und Eingangsinformation
erzeugt werden, ist nicht Gegenstand vorliegender Erfindung und kann durch herkömmliche Maßnahmen
erreicht werden; beispielsweise kann eine Mikroprogrammsteuereinrichtung verwendet werden.
Aus der Anordnung werden Daten als ein Satz von SPALTEN-ANSPRECH-Signalen ausgelesen, und zwar
jeweils eines pro Spalte. Wie gezeigt, wird jedes SPALTEN-ANSPRUCH-Signal dadurch gebildet, daß
Ausgänge aus den individuellen Elementen in der in Frage kommenden Spalte mit Hilfe eines UND-Gliedes
kombiniert werden. Ein Satz von Reihenansprechsignalen (nicht dargestellt) kann in ähnlicher Weise gebildet
werden.
Jedes Datenverarbeitungselement PE ist im Aufbau sehr einfach und ist in der Lage, nur Bit-Serien-Vorgänge
durchzuführen, so daß es im Betrieb relativ langsam ist. Die Gesamtverarbeitungsgeschwindigkeit der Einrichtung
ist jedoch hoch; da viele Verarbeitungselemente vorgesehen sind, die parallel arbeiten.
Aufbau des Datenverarbeitungselementes
F i g. 2 zeigt eines der Datenverarbeitungselemente PE im einzelnen. In dieser Figur sind die Signale CCLK,
QCLK, CEN, QEN, SEN, ROUTE, RO, Rl, CDSEL, INV und WE die vorerwähnten Steuersignale, die an
alle Verarbeitungselemente übertragen werden. Die Steuersignale weisen ferner eine Speicheradresse
A DD 0 -11 mit zwölf Bits auf.
Das Datenverarbeitungselement besitzt einen Speicher S, der aus einem Random-Speicher mit 4096 Bits
besteht, dessen Bits individuell mit Hilfe der Adresse ADDO—U adressierbar sind. Der Speicher besitzt
einen Freigabesingang, der mit der Reihenauswählleitung RS der in Frage kommenden Reihe verbunden ist.
Wenn ein binäres »1 «-Signal einem der Reihenauswählleiter RS aufgegeben wird, werden alle Speicher S in
dieser Reihe wirksam gemacht. Der Speicher 5 besitzt ferner einen Schreib-Freigabe-Eingang, der das Steuersignal
WE aufnimmt. Der Speicher wird nur zum Einschreiben wirksam gemacht, wenn sowohl der
Freigabe-Eingang als auch der Schreib-Freigabe-Eingang
beaufschlagt werden.
Der Datenausgang RD des Speichers ist mit dem UND-Glied (Fig. 1) verbunden, das das Spaltenansprech-Signal
für die in Frage kommende Spalte bildet. Der Dateneingang des Speichers wird aus einem
Nicht-Äquivalenz-Gatter 10 erhalten, dessen einer Eingang das Datensignal D und dessen anderer Eingang
das Steuersignal /Λ/Vaufnimmt. Wenn WV=O, wird das
Datensignal D über das Gatter 10 auf den Speicher 5 ohne jede Inversion übertragen. Wenn jedoch INV- 1,
wird das Signal D invertiert, bevor es an den Speicher angelegt wird. Das Gatter 10 ermöglicht somit das
selektive Invertieren der Daten unter Steuerung des Signals INV.
Das Datenverarbeitungselement enthält ferner eine einstufige binäre Volladdierschaltung 11 mit drei
Eingängen und Summen- sowie Übertragungsausgängen. Der erste Eingang ist über ein UND-Glied 12 mit
dem Ausgang eines Ein-Bit-Obertragungsregisters C verbunden. Der zweite Eingang ist über ein UND-Glied
13 mit dem Ausgang eines Ein-Bit-Akkumulaiorregisters Q verbunden. Der dritte Eingang ist über ein
UND-Glied 14 an den Datenausgang RDdes Speichers
5 gelegt Die UND-Glieder 12, 13, 14 werden durch Signale CEN, QEN und SEN gesteuert Die Register C
und Q werden durch Signale CCLK und QCLK getaktet
Der Dateneingang des Registers C ist mit dem Übertrags-Ausgang des Addierers verbunden. Der
Dateneingang des Registers Q ist an den Ausgang eines Multiplexers 15 gelegt der durch das Signal ROUTE
gesteuert ist Wenn ROUTE=O, wählt der Multiplexer seinen ersten Eingang, der mit dem Summenausgang
des Addierers verbunden ist Wenn ROUTE= I, wählt der Multiplexer meinen zweiten Eingang, der mit dem
Ausgang des anderen Multiplexers 16 verbunden ist. Dieser andere Multiplexer wählt den Ausgang des
Q- Registers eines der vier benachbarten Datenverarbeitungselcmenie
in den Nord-, Ost-, Süd- und West-Richtungen entsprechend dem Wert der Steuersignale
RO, Ri, wie angezeigt. Diese Signale RO. Ri
stellen einen Leitcode zur Steuerung der Richtung des Datenflusses zwischen den Elementen dar.
Das Signal Dwird aus einem Multiplexer 17 erhalten, der durch das Signal CDSEL gesteuert wird. Wenn
CDSEL=O, wählt der Multiplexer 17 seinen ersten Eingang, der mit dem Summenausgang des Addierers
verbunden ist. 1st CDSEL= 1, wählt der Multiplexer den zweiten Eingang, der mit dem Spaltendatenleiter CD
der in Frage kommenden Spalte verbunden ist.
Arbeitsweise des Datenverarbeitungselementes
Durch Anlegen verschiedener Kombinationen von Steuersignalen an die Anordnung kann jedes Datenverarbeitungselement
PE so betrieben werden, daß es eine Vielzahl von unterschiedlichen Verarbeitungsvorgängen
durchführt. Es ist nicht erforderlich, jeden möglichen Arbeitsvorgang zu beschreiben; es werden
jedoch nachstehend bestimmte Fälle beschrieben, um das Verständnis der Arbeitsweise des Verarbeitungselementes
zu erleichtern.
Laden von Q
Dieser Arbeitsvorgang schließt das Auslesen eines Datenbits aus dem Speicher und das Einschreiben dieses
Datenbits in das Akkumulatorregister Q über den Addierer ein. Dies wird durch folgende Kombination
von Steuersignalen erzielt: RS=X, SEN=\, QEN=O, CEN=O, QCLK= 1 und ROUTE=O.
Rücksetzen von C
Das C-Register kann dadurch rückgesetzt werden, da? QEN=O und CEN=O gemacht werden, so daß der
Übertragsausgang des Addierers 0 wird, und daß CCLK= 1 gemacht wird, wodurch der Null-Ausgang in
das Übertragsregister Cgetaktet wird.
Dieser Arbeitsvorgang schließt das Auslesen eines Datenbits aus dem Speicher und das Addieren dieses
Bits zu dem Inhalt der C- und ζϊ-Register, sowie das
Einschreiben des Summenresultates in das (^-Register
und des Übertragsresultates in das C-Register ein. Dies wird durch folgende Signale erreicht: RS=\, CEN=],
QEN= 1, SEN= X, QCLK= 1, ROUTE=O und CCLK= \.
Dieser bewirkt, daß der Inhalt des Q-Registers in den
Speicher eingeschrieben wird. Die erforderlichen Speichersignale sind: CEN=O, SEN=O, QEN=\,
CDSEL=O. RS= 1. und WE= 1. Die Daten können
erforderlichenfalls dadurch invertiert werden, daß INV= 1 gemacht wird.
Eingabe CD
Dies bewirkt, daß Eingangsdaten an die Spaltendatenleitern angelegt werden, damit sie in den Speicher
eingeschrieben werden. Die erforderlichen Steuersignale sind CDSEL=X, RS=\ und WE=I. Wenn INV=X,
werden die Daten invertiert.
ROUTE
Dies bewirkt, daß der Inhalt eines jeden (^-Registers
in das (^-Register des nächsten Nachbarn in der Nord-,
Ost-, Süd- oder West-Richtung entsprechend dem Wert des Leitcodes RO, Ri verschoben wird. Die erforderlichen Steuersignale sind ROUTE= 1 und QCLK= X.
Dies bewirkt, daß der Inhalt der Speicher in einer
ausgewählten Reihe der Anordnung über die Spaltenansprechleiter ausgegeben wird. Dies wird dadurch
erreicht, daß alle Reihenauswählsignale RS=O, ausgenommen in der ausgewählten Reihe, in der RS=X,
gesetzt werden. In den nichtausgewählten Reihen werden die Speicher S unwirksam gemacht und ihre
Datenausgänge RD nehmen deshalb einen hohen Spannungspegel an, der eine binäre »1« darstellt.
F i g. 3 zeigt eines der Paritätsverarbeitungselemente
PPE im Detail. Das Element ist im wesentlichen identisch mit dem Datenverarbeitungselement nach
F i g. 2. Insbesondere enthält das Paritätsverarbeitungselement interne Register PQ und PC, die den Registern
Q und Centsprechen, sowie einen Speicher PS mit 4096
Bits entsprechend dem Speicher 5.
Jedes der Register PQ und PC enthält ein
Gerade-Paritätsbit für den Satz von entsprechenden Datenregistern Qoder C in den Datenverarbeitungselementen PE in der gleichen Reihe der Anordnung. Wenn
beispielsweise die {^-Register in einer bestimmten Reihe
die Werte 1,0,1,1 enthalten (wobei angenommen wird,
daß nur vier Datenverarbeitungselemente in der Reihe vorhanden sind), soll das PQ-Register in der gleichen
Reihe das Paritätsbit »1« enthalten, so daß eine gerade Anzahl von Einsen aufrechterhalten wird.
PSein Gerade-Paritätsbit für den Satz von entsprechenden Stellen in den Speichern 5 in der gleichen Reihe.
Wenn beispielsweise Speicherstellen Nr. 293 in den Speichern 5 einer bestimmten Reihe die Werte 1,0,0 1
enthalten, soll die Stelle Nr. 293 im Speicher PS der gleichen Reihe das Paritätsbit »0« enthalten.
Die Unterschiede zwischen dem Aufbau des Paritätsverarbeitungselementes und des Datenverarbeitungselementes sind folgende:
(a) Das Paritätsverarbeitungselement enthält kein Nicht-Äquivalenz-Gatter analog dem Gatter 10 in
F i g. 2 und ist somit nicht in der Lage, den Ausgang des Multiplexers 17 zu invertieren. Der Grund
hierfür besteht darin, daß das Invertieren einer Binärzahl mit einer geraden Anzahl von Bits die
Parität nicht beeinflußt. Beispielsweise wird die Binärzahl 0010, wenn sie invertiert wird, 1101, und
beide Zahlen haben eine ungerade Anzahl von
(b) In dem Paritätsverarbeitungselement sind die Ost- und West-Eingänge (E und W) in den Multiplexer
16 mit dem Ausgang des Ρζ>-Registers im gleichen
Element verbunden, anstatt daß sie mit benachbar
ten Elementen verbunden sind. Wenn somit Daten
nach Osten oder nach Westen zwischen den Datenverarbeitungselementen verschoben werden,
wird der Inhalt der PQ-Register nicht geändert.
Der Grund hierfür ist, daß wegen der zyklischen
Schaltung einer jeden Reihe von Verarbeitungselementen PE die Anzahl von Einsen in den
(^-Registern einer Reihe sich nicht ändert, wenn
eine Ost- oder West-Verschiebung auftritt
(c) Ein Multiplexer 18 wird zwischen den Multiplexer 17 und den Speicher PS eingeschaltet. Der Zweck
dieses Multiplexers wird weiter unten erläutert
Wie vorstehend erwähnt, nimmt jedes Paritätsverarbeitungselement genau den gleichen Satz von Steuersi-
gnalen wie die Datenverarbeitungselemente auf und führt deshalb die gleichen Arbeitsvorgänge an den
Paritätsbits aus wie die Verarbeitungselemente PE an den entsprechenden Datenbits ausführen (abgesehen
von Ausnahmen, die sich aus den vorerwähnten
Unterschieden ergeben). Man würde deshalb erwarten,
daß die Paritätsverarbeitungselemente automatisch richtige Paritätsbits in den richtigen Speicherstellen in
bezug auf die entsprechenden Daten in den Datenverarbeitungselementen aufrechterhalten. Wenn beispiels-
weise Daten aus den Speichern S ausgelesen und in die (^-Register eingeschrieben werden, wird das entsprechende Paritätsbit automatisch aus dem Speicher PS
ausgelesen und in das Register /"<? eingeschrieben.
Bei bestimmten arithmetischen Vorgängen können
die Paritätsbits jedoch unwirksam gemacht werden. Es
sei beispielsweise angenommen, daß die Q-Register
einer bestimmten Reihe der Anordnung die Werte 1,0, 1, 1 und die C-Register die Werte 1, 1, 0, 0 enthalten.
Damit soll das /^Register dieser Reihe das Paritätsbit
»1« und das PC-Register den Wert »0« enthalten. Es sei nunmehr angenommen, daß die Q- und C-Register in
jedem Verarbeitungselement miteinander addiert werden und das Übertragsresultat in das C-Register
eingeführt wird. Die C-Register der Reihe enthalten
nunmehr die Werte 1,0,0,0. In ähnlicher Weise werden
die Inhalte der PQ- und .FC-Register addiert und das
Übertragsresultat (»0«) wird in das flC-Register eingesetzt Daraus ergibt sich, daß der Inhalt des
/5C-Registers nunmehr ungültig wird, da das Paritätsbit
für die C-Register den Wert »1« haben soll. Das ungültige Paritätsbit kann dann den Summenausgang
des Addierers während nachfolgender Arbeitsvorgänge verfälschen und den Inhalt des PQ-Registers ungültig
machen, usw.
Nach Fig.4 ist jeder Reihe der Anordnung eine
Paritätsprüfschaltung zugeordnet. Jede Paritätsprüf-Schaltung weist einen Addierer 20 auf, der die
Ausgangsdatenbits D aus jedem Datenverarbeitungselement in der entsprechenden Reihe aufnimmt und die
Modulo-2-Summe dieser Datenbits bildet. Diese Summe ergibt ein Ausgangssignal PAR, das das richtige gerade
Paritäisbh für die Daten darstellt. Das Paritätsbil PAR wird an ein Nicht-Äquivalenz-Gatter 21 angelegt, das
auch das entsprechende Paritätsbit P aus dem Paritätsverarbeitungselement PPE in der gleichen
Reihe aufnimmt. Wenn PAR nicht gleich P ist, wird ein Signal FAIL erzeugt, das anzeigt, daß die Paritätsprüfung negativ ist
Wie oben erwähnt, enthält das Paritätsverarbeitungselement PPE nicht immer gültige Paritätsbits, und
insbesondere kann das Ausgangsparitätsbit P nicht gültig sein. Deshalb bedeutet das F/4/L-Signal nicht
notwendigerweise, daß ein Fehler aufgetreten ist.
Die Gültigkeit der Paritätsbits wird mit Hilfe einer logischen Schaltung 22 für gültige Parität überwacht die
allen Reihen der Anordnung gemeinsam ist. Diese Schaltung erzeugt ein Ausgangssignal PV, das nur echt
ist wenn die Paritätsbits P aus allen Paritätsverarbeitungselementen definitiv gültig sind. Das Signal PVwird
in einem UND-Glied 23 mit dem FA/L-Signal aus der
Paritätsprüfschaltung kombiniert so daß ein ERROR-Signal nur erzeugt wird, wenn sowohl PV= 1 als auch
FAIL= 1. Auf diese Weise bleiben fehlerhafte E4/L-Signale, die sich aus ungültigen Paritätsbits ergeben,
unberücksichtigt.
Aus F i g. 3 ergibt sich, daß das PV-Signal ferner auch
den Multiplexer 18 steuert. Wenn PV= i, wählt der Multiplexer 18 das Signal Paus. Wenn jedoch PV=O,
wird statt dessen das PAÄ-Signal ausgewählt Somit kann das Signal P in den Speicher PS nur dann
eingeschrieben werden, wenn es definitiv ein gültiges
Paritätsbit darstellt Sonst wird das richtige Paritätsbit PAR ersetzt
50
Die logische Schaltung 22 für »Parität gültig« wird
nachstehend in Verbindung mit F i g. 5 beschrieben.
Diese logische Schaltung enthält zwei Ein-Bit-Register QVund CV. QVzeigt in gesetztem Zustand an, daß
der Inhalt der /"(^Register in allen Paritätsverarbeitungselementen gültig ist In ähnlicher Weise zeigt ein
gesetztes CVan, daß die PC-Register alle gültig sind.
Wie vorstehend erwähnt, ist das Ausgangssignal PV
nur echt, wenn die Ausgangssignale P aus allen Paritätsverarbeitungselementen gültig sind. Nach eo
Fi g. 3 ergibt sich, daß das Signal P entweder von dem
Summenausgang des Addierers 11 oder von dem Spaltendatenleiter CD (wenn CDSEL=X) abgeleitet
wird. Es wird angenommen, daß der Spaltendatenleiter
CD stets ein gültiges Paritätsbit (das durch eine geeignete Schaltung außerhalb der Anordnung erzeugt
wird) führt
ganges durch ein Signal SUMV angezeigt. Das PV-Signal wird durch Kombinieren des CDSEL=Signals und des Si/AiV-Signals in einem ODER-Glied 31
erzeugt, so daß PV= 1, wenn entweder CDSEL= 1 oder SUMV= 1.
Nach Fig.3 ist der Summenausgang des Addierers
gültig, wenn alle seine Eingänge gültig sind. Der erste Eingang ist gültig, wenn das PC-Register gültig ist. Der
erste Eingang kann auch als gültig angenommen werden, wenn CEN-O, da in diesem Fall dieser Eingang
in allen Verarbeitungselementen Null ist. Dies ergibt sich aus der Tatsache, daß das richtige Gerade-Paritäts-Bit für ein Wort mit lauter Nullen Null ist. In
ähnlicher Weise ist der zweite Eingang gültig, wenn das P(?-Register gültig ist, oder wenn QEN=O. Entsprechend ist der dritte Eingang güllig, wenn der Ausgang
RD aus dem Speicher PS gültig ist, oder wenn SEN=O.
Der Speicherausgang RD ist für jedes Element nur dann
gültig, wenn die Speicher in allen Reihen der Anordnung wirksam gemacht werden. Dies wird durch ein Signal
RS= 1 angezeigt das von einem UND-Glied erzeugt wird, wie in F i g. 1 gezeigt.
Nach Fig.5 besteht die logische Schaltung zur Erzeugung des St/ΛίV-Signals aus einem UND-Glied
32, das die Ausgänge von drei ODER-Gliedern 33,34,35
kombiniert Das ODER-Glied 33 nimmt den Ausgang des QV-Registers und den inversen Wert des QEN-Signals auf, das ODER-Glied 34 nimmt den Ausgang des
CK-Registers und den inversen Wert des CEN-Signals
auf, und das ODER-Glied 35 nimmt das RS= 1 Signal und den inversen Wert des SEAZ-Signals auf.
Aus Fig.3 ergibt sich, daß jedes PQ-Register ein
gültiges Paritätsbit aufnimmt wenn QCLK= 1, und wenn entweder
(a) ROUTE=O und der Summenausgang des Addie
rers gültig ist oder wenn
(b) ROUTE= L und die Inhalte der P<?-Register
bereits gültig sind.
Nach Fig.5 besteht die logische Schaltung zum
Setzen des QV-Registers somit aus einem ODER-Glied 36, das die Ausgänge der beiden UND-Glieder 37, 38
aufnimmt Das UND-Glied 37 nimmt das Si/A/K-Signal
und den inversen Wert des ÄOLTTE-Signals auf,
während das UND-Glied 38 das ÄOt/TE-Signal und den
Ausgang des QV-Registers aufnimmt
Aus Fig.3 ergibt sich, daß jedes PC-Register ein
gültiges Paritätsbit aufnimmt wenn CCLK= 1 und der Übertragungsausgang des Addierers gültig ist Die
Gültigkeit des Ubertragsausgang des Addierersganges kann nur in speziell bestimmten Fällen angenommen
werden. Einer dieser Fälle ist der, bei dem der
Obertragsausgang identisch Null in jedem Element in der Anordnung ist Dies ist der Fall, wenn mindestens
zwei der drei Eingänge zum Addierer 11 unwirksam gemacht werden, d h. wenigstens zwei der Signale CEN,
QENund SENNvAl sind.
Nach Fig.5 besteht die logische Schaltung zum
Setzen des CV-Registers aus einer Addierschaltung 39, die den inversen Wert eines jeden der drei Signale CEN,
QEN und SEN aufnimmt Daraus ergibt sich, daß der Obertragsausgang dieses Addierers nur echt ist wenn
mindestens zwei von CEN, QENwd SENNuH sind.
Zusammenfassend überwacht die logische Schaltung 22 für »Parität gültig« die Steuersignale, die an die
Verarbeitungselemente angelegt werden, und leitet ab, ob die Paritätsbits in den Paritätsverarbeitungselementen durch diese Signale ungültig gemacht werden oder
nicht. Die logische Schaltung für »Parität gültig« basiert ihre Entscheidung nicht nur auf die jeweiligen Werte der
Steuersignale, sondern auch auf die früheren Werte dieser Signale, da diese früheren Werte die Zustände
der Register QVund CVbeeinflussen.
Bei der beschriebenen Einrichtung hat jedes Verarbeitungselement
einen außerordentlich einfachen Aufbau. Bei anderen Ausführungsformen der Erfindung
können komplexe Verarbeitungselemente verwendet werden, wie sie beispielsweise in den eingangs
erwähnten älteren Vorschlägen beschrieben sind. In einem solchen Fall würde die logische Schaltung für
»Parität gültig« ebenfalls komplexer sein. In jedem Fall sollte diese Logik vorzugsweise so ausgelegt sein, daß
10
wenigstens ein Hauptteil der Logik eines jeden Verarbeitungselementes während einer typischen Folge
von Datenverarbeitungsvorgängen auf Parität geprüft wird.
Bei anderen Ausführungsformen der Erfindung kann mehr als ein Paritätsverarbeitungselement für jede
Reihe der Anordnung vorgesehen sein, so daß ein höherer Grad an Paritätsprüfung erzielt wird. Wenn 64
Datenverarbeitungselemente in jeder Reihe der Anordnung vorhanden sind, kann beispielsweise ein Paritätsverarbeitungselement
für jede Gruppe von acht Datenverarbeitungselementen vorgesehen sein, so daß für jede Reihe acht Paritätsverarbeitungselemente
vorgesehen werden.
Hierzu 3 Blatt Zeichnungen
Claims (5)
1. Datenverarbeitungseinrichtung mit einer Vielzahl von im wesentlichen identischen Datenverarbeitungselementen,
welche jeweils einen Speicher, eine Vielzahl von internen Registern und eine Verarbeitungslogik enthalten, wobei allen Datenverarbeitungselementen
ein einziger Strom von Steuersignalen parallel zugeführt wird, mittels dessen sie
die Inhalte der internen Register und des Speichers <o
weiterverarbeiten, gekennzeichnet durch
a) mindestens ein weiteres Datenverarbeitungselement (Paritätsverarbeitungselement PPE),
das ebenfalls einen Speicher (SP), eine Vielzahl von internen Registern (PC, PQ) und eine is
Verarbeitungslogik (11 — 14) aufweist, wobei jede Speicherstelle des Speichers (PS) des
Paritätsverarbeitungselemente (PPE) ein den Daienbits in den entsprechenden Speicherstellen
der Speicher (S) der Datenverarbeitungselemente (PE) zugehöriges Paritätsbit enthält, und
jedes interne Register (PC, PQ)des Paritätsverarbeitungselements
ein den Datenbits in den entsprechenden internen Registern (Q Q) der
Datenverarbeitungselemente zugehöriges Paritätsbit enthält, und wobei das Paritätsverarbeitungselement
(PPE) und die Datenverarbeitungselcmente (PE) durch denselben Strom von
Steuersignalen gesteuert werden, so daß die Paritätsbits in den Paritätsverarbeitungse'.ementen
im wesentlichen ebenso verarbeitet werden wie die Datenbits in den Datenverarbeitungselementen
und
b) eine Prüfvorrichtung (20,21) zum Kombinieren von Datenbits (D) aus den Datenverarbeitungselementen
mit einem Paritätsbit (P) aus den Paritätsverarbeitungselementen zur Erzeugung
eines Signals (FAIL), das angibt, ob ein Fehler in den Datenbits vorhanden ist oder nicht.
2. Datenverarbeitungseinnchtung nach Anspruch *o
1, dadurch gekennzeichnet, daß eine Steuerlogik (22) vorgesehen ist, die bestimmt, ob das Paritätsbit (P)
von dem Paritätsverarbeitungselement gültig ist, und die das Ausgangssignal (FAIL) aus der Prüfvorrichtung
(20, 21) unterdrückt, wenn das Paritätsbit ungültig ist.
3. Datenverarbeitungseinrichtung nach Anspruch
2, dadurch gekennzeichnet, daß die Steuerlogik (22) die Steuersignale überwacht, die den Datenverarbeitungselementen
zugeführt werden, und festlegt, ob die Paritätsbits in dem Paritätsverarbeitungselement
(PPE) durch die Vorgänge, die durch die Steuersignale bestimmt werden, ungültig gemacht werden.
4. Datenverarbeitungseinrichtung nach Anspruch
2 oder 3, dadurch gekennzeichnet, daß dann, wenn die Steuerlogik (22) festlegt, daß ein Paritätsbit (P)
ungültig ist, ein gültiges Paritätsbit, das aus den Datenbits (D) der Datenverarbeitungselemente
erzeugt wird, anstelle des ungültigen Paritätsbits gesetzt wird.
5. Datenverarbeitungseinrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Steuerlogik (22)
ein Gültigkeitsregister (CV oder QV) aufweist, das anzeigt, ob das interne Register (PC oder PQ) im
Paritätsverarbeitungselement ein gültiges Paritätsbit enthält.
Die Erfindung bezieht sich auf eine Datenverarbeitungseinrichtung nach dem Oberbegriff des Anspruchs
1.
Es ist eine Datenverarbeitungseinnchtung mit einer Vielzahl von im wesentlichen identischen Datenverarbeitungselementen
bekannt, die Datenverarbeitungsvorgänge auf getrennten Datenströmen in Abhängigkeit
von einem einzigen Strom von Steuersignalen, der allen Verarbeitungselementen parallel zugeführt wird,
durchführt Der Vorteil einer solchen Einrichtung besteht darin, daß aufgrund der parallelen Verarbeitung
mehrerer Datenströme die gesamte Datenverarbeitungsgeschwindigkeit wesentlich höher sein kann als die
einer herkömmlichen Verarbeitungseinrichtung, bei der nur ein Datenstrom zu einem bestimmten Zeitpunkt
verarbeitet werden kann. Eine derartige Datenverarbeitungseinrichtung ist beispielsweise Gegenstand der
GB-PS 14 45 714. Eine weitere Einrichtung dieser Art ist
Gegenstand der deutschen Patentanmeldung P 29 13 670.7.
Es ist ferner bekannt, die Richtigkeit von Daten durch Verwendung z. B. eines oder mehrerer Paritätsbits zu
prüfen, der einer jeden Dateneinheit (z. B. jedem Wort oder Byte) zugeordnet ist. Paritätsbits sind bei
Datenübertragungsanlagen und auch bei konventionellen (Einfachdatenstrom-) Verarbeitungseinrichtungen in
großem Umfang verwendet worden.
Aufgabe der Erfindung ist es, die Möglichkeit einer Prüfung von Daten in einer Mehrfach-Datenstromverarbeitungseinrichtung
der vorbeschriebenen Art zu schaffen.
Gemäß der Erfindung wird dies mit den Merkmalen des Kennzeichens des Anspruchs 1 erreicht.
Weitere Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.
Nachstehend wird die Erfindung in Verbindung mit der Zeichnung anhand eines Ausführungsbeispiels einer
Datenverarbeitungseinrichtung beschrieben. Es zeigt
F i g. 1 ein Blockschaltbild der Datenverarbeitungseinrichtung nach der Erfindung,
F i g. 2 einen Schaltplan eines Datenverarbeitungselementes,
F i g. 3 einen Schaltplan eines Paritätsverarbeitungselementes,
F i g. 4 ein Blockschaltbild, aus dem hervorgeht, wie die Paritätsprüfung durchgeführt wird, und
F i g. 5 eine logische Schaltung für »Parität gültig«.
Nach F i g. 1 weist die Datenverarbeitungseinnchtung eine zweidimensional Anordnung von Datenverarbeitungselementen
PE auf, die in Reihen und Spalten zusammengeschaltet sind. Jede Reihe besitzt eine
gerade Anzahl von Datenverarbeitungselementen PE. Es können in der Anordnung beispielsweise 64x64
Elemente vorhanden sein. Jedes Element ist mit seinen vier nächstbenachbarten Elementen in der Nord-, Ost-,
Süd- und West-Richtung verbunden, damit Daten zwischen ihnen übertragen werden können. Die
Verbindung an den Rändern der Anordnung sind zyklisch, derart, daß das oberste Element einer jeden
Spalte effektiv der südliche Nachbar des untersten Elementes der gleichen Spalte ist, und das äußerste linke
Element einer jeden Reihe effektiv der östliche Nachbar des äußersten rechten Elementes in der gleichen Reihe
ist.
Die Anordnung weist ferner eine weitere Spalte von Paritätsverarbeitungselementen PPE auf; es ist jeweils
ein solches Paritätsverarbeitungselement für jede Reihe der Anordnung vorgesehen. Diese Paritätsverarbei-
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB7845858 | 1978-11-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2946119A1 DE2946119A1 (de) | 1980-06-04 |
DE2946119C2 true DE2946119C2 (de) | 1982-08-12 |
Family
ID=10501283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2946119A Expired DE2946119C2 (de) | 1978-11-23 | 1979-11-15 | Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wird |
Country Status (3)
Country | Link |
---|---|
US (1) | US4304002A (de) |
DE (1) | DE2946119C2 (de) |
FR (1) | FR2442478A1 (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ZA811458B (en) * | 1980-03-28 | 1982-03-31 | Int Computers Ltd | Data processing system |
US4433388A (en) * | 1980-10-06 | 1984-02-21 | Ncr Corporation | Longitudinal parity |
US4414669A (en) * | 1981-07-23 | 1983-11-08 | General Electric Company | Self-testing pipeline processors |
US4464747A (en) * | 1982-02-18 | 1984-08-07 | The Singer Company | High reliability memory |
US4608693A (en) * | 1984-05-07 | 1986-08-26 | At&T Bell Laboratories | Fault detection arrangement for a digital conferencing system |
EP0190813B1 (de) * | 1985-01-29 | 1991-09-18 | The Secretary of State for Defence in Her Britannic Majesty's Government of the United Kingdom of Great Britain and | Verarbeitungszelle für fehlertolerante Matrixanordnungen |
US4740894A (en) * | 1985-09-27 | 1988-04-26 | Schlumberger Systems And Services, Inc. | Computing processor with memoryless function units each connected to different part of a multiported memory |
US4852048A (en) * | 1985-12-12 | 1989-07-25 | Itt Corporation | Single instruction multiple data (SIMD) cellular array processing apparatus employing a common bus where a first number of bits manifest a first bus portion and a second number of bits manifest a second bus portion |
US4985832A (en) * | 1986-09-18 | 1991-01-15 | Digital Equipment Corporation | SIMD array processing system with routing networks having plurality of switching stages to transfer messages among processors |
JPS63192153A (ja) * | 1987-02-05 | 1988-08-09 | Agency Of Ind Science & Technol | 並列デ−タ処理装置 |
EP0360527B1 (de) * | 1988-09-19 | 1995-01-04 | Fujitsu Limited | Paralleles Rechnersystem mit Verwendung eines SIMD-Verfahrens |
AU628971B2 (en) * | 1989-05-22 | 1992-09-24 | Tandem Computers Incorporated | Sequential parity correction |
US5689719A (en) * | 1991-06-28 | 1997-11-18 | Sanyo Electric O., Ltd. | Parallel computer system including processing elements |
AU3360401A (en) * | 1999-12-29 | 2001-07-16 | Systemonic Ag | Device and method for control of the data stream |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3342983A (en) * | 1963-06-25 | 1967-09-19 | Ibm | Parity checking and parity generating means for binary adders |
GB1445714A (en) * | 1973-04-13 | 1976-08-11 | Int Computers Ltd | Array processors |
US3925647A (en) * | 1974-09-30 | 1975-12-09 | Honeywell Inf Systems | Parity predicting and checking logic for carry look-ahead binary adder |
-
1979
- 1979-11-05 US US06/091,552 patent/US4304002A/en not_active Expired - Lifetime
- 1979-11-15 DE DE2946119A patent/DE2946119C2/de not_active Expired
- 1979-11-23 FR FR7928972A patent/FR2442478A1/fr active Granted
Also Published As
Publication number | Publication date |
---|---|
US4304002A (en) | 1981-12-01 |
DE2946119A1 (de) | 1980-06-04 |
FR2442478B1 (de) | 1983-05-20 |
FR2442478A1 (fr) | 1980-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69825234T2 (de) | Verfahren und vorrichtung zur selbstprüfung von multi-port-rams | |
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE3742487C2 (de) | ||
DE2803989C2 (de) | Digitaldatenspeicher mit wahlfreiem Zugriff | |
DE3686436T2 (de) | Speichersystem mit hoher leistung. | |
DE69221045T2 (de) | Verfahren und Gerät zur programmierbaren Speicherssteuerung mit Fehlerregelung und Prüffunktionen | |
DE3886038T2 (de) | Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält. | |
DE69019555T2 (de) | Technik für die serielle Prüfung eingebauter Speicher. | |
DE2946119C2 (de) | Datenverarbeitungseinrichtung mit einer Vielzahl von Datenverarbeitungselementen, denen ein einziger Strom von Steuersignalen zugeführt wird | |
DE68907518T2 (de) | Inhaltsadressierte Speicheranordnung. | |
DE2637054C3 (de) | Steuervorrichtung für einen Pufferspeicher | |
DE3586377T2 (de) | Halbleiterspeicheranordnung. | |
DE2741886A1 (de) | Datenuebertragungseinrichtung | |
DE2310631C3 (de) | Speicherhierarchie für ein Datenverarbeitungssystem | |
DE3128740A1 (de) | Dynamisches halbleiter-speichersystem | |
DE3916784A1 (de) | Dynamische halbleiterspeichereinrichtung | |
DE3587374T2 (de) | Halbleiterspeichergeraet mit einer bit-fehlererkennungsfunktion. | |
DE3814875C2 (de) | ||
DE2357654C2 (de) | Assoziativspeicher | |
DE4210109C2 (de) | Sortiervorrichtung zum Sortieren von Daten und Sortierverfahren | |
DE2403669C3 (de) | SpezialComputer | |
DE69025782T2 (de) | Registerbankschaltung | |
DE19628039A1 (de) | Speicheradressen-Steuerschaltung | |
DE10105627B4 (de) | Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung | |
DE2235883A1 (de) | Datenverarbeitungseinrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |