DE2262002A1 - PROCEDURE FOR CHECKING LOGICAL OPERATIONS BASED ON A PARITY CHECK - Google Patents
PROCEDURE FOR CHECKING LOGICAL OPERATIONS BASED ON A PARITY CHECKInfo
- Publication number
- DE2262002A1 DE2262002A1 DE19722262002 DE2262002A DE2262002A1 DE 2262002 A1 DE2262002 A1 DE 2262002A1 DE 19722262002 DE19722262002 DE 19722262002 DE 2262002 A DE2262002 A DE 2262002A DE 2262002 A1 DE2262002 A1 DE 2262002A1
- Authority
- DE
- Germany
- Prior art keywords
- parity
- bit
- operands
- parity bits
- xor
- 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.)
- Pending
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
Description
Anmelderin: IBM Deutschland GmbHApplicant: IBM Deutschland GmbH
Pascalstr. 100 7000 Stuttgart 80Pascalstrasse 100 7000 Stuttgart 80
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin: GE 972 028Official file number: New registration File number of the applicant: GE 972 028
Verfahren zur Prüfung von logischen Operationen auf der Grundlage einer Paritätsprüfung Method for checking logical operations on the basis of a parity check
Die Erfindung betrifft ein Verfahren zur Prüfung von insbesondere in einem Rechner durchzuführenden logischen und arithmetischen Operationen, bei dem die Operanden als mehrere Bitstellen aufweisende Binärwörter mit je einer ergänzenden Paritätsbitstelle vorliegen und die Operanden bitstellenweise der jeweiligen Operation unterworfen werden=The invention relates to a method for checking logical and arithmetic, in particular, to be carried out in a computer Operations in which the operands are binary words with several bit positions, each with a supplementary parity bit position are present and the operands are subjected to the respective operation bit-by-bit =
Bei der Entwicklung von leistungsfähigen Rechnern kommt der Möglichkeit der Fehlerprüfung, d.h. der Fehlererkennung und/ oder der Fehlerkorrektur, seit jeher große Bedeutung zu. Die im weitaus größten Umfang verwendete Fehlerprüfungsmethode besteht in der relativ einfachen, billigen und schnellen so-? genannten Paritätsprüfung. Dabei wird den im Rechner zu verarbeitenden binär dargestellten Daten je ein ergänzendes sogenanntes Paritätsbit hinzugefügt, derart, daß die modulo 2 Summe aller Ziffern des als Binärzahl dargestellten Datenwortes 0 (oder 1) ist. Mit anderen Worten werden durch das Paritätsbit z.B. die "1"-Stellen in einem Binärwort zu einer stets geraden oder ungeraden Anzahl ergänzt« Dieses Paritätsbit wird dem zu sichernden Datenwort meist direkt beigefügt, zu~When developing powerful computers, the Possibility of error checking, i.e. error detection and / or error correction, has always been of great importance. The most widely used error checking method consists in the relatively simple, cheap and fast so-? called parity check. The binary represented data to be processed in the computer is each supplemented by a so-called Parity bit added so that the modulo 2 sum of all digits of the data word represented as a binary number Is 0 (or 1). In other words, the parity bit, for example, always makes the "1" digits in a binary word one even or odd number added «This parity bit is usually added directly to the data word to be saved, to ~
409826/0518409826/0518
sairmen mit ihm gespeichert und bei jeder Datenübertragung mitbewegt. Nach jeder Datenbewegung läßt sich somit durch eine einfache Paritätsprüfung feststellen, ob zwischenzeitlich eine Bitstelle des Datenwortes verfälscht worden ist.sairmen stored with him and with each data transfer moved along. After every data movement, a simple parity check can be used to determine whether in the meantime a bit position of the data word has been corrupted.
In einem Rechner werden nun Datenworte aber nicht nur gespeichert und bewegt, sondern zur Durchführung logischer und arithmetischer Operationen auch mit anderen Datenworten verknüpft. Bis auf einige spezielle arithmetische Grundoperationen können in diesem Fall aber keineswegs mehr die Paritätsbits der Operanden in gleicher Weise wie die Datenbitsteilen der betreffenden insbesondere logischen Operation mit dem Ziel unterworfen werden, auf diese Weise gleich das Paritätsbit für das das Verknüpfungsergebnis dargestellende "neue" Datenwort zu erhalten. Dazu sei das folgende Beispiel gegeben:In a computer, data words are now not only stored and moved, but also to carry out logical and arithmetic operations also linked with other data words. Except for a few special basic arithmetic operations in this case, however, can no longer divide the parity bits of the operands in the same way as the data bit parts be subjected to the particular logical operation concerned with the aim, in this way equal to the parity bit for the "new" data word representing the link result. The following example is given:
Dabei stellen A und B die aus vier Bitstellen bestehenden Operanden (Datenworte) dar. Mit P(A) bzw. P(B) sind die die Operanden auf eine gerade Anzahl von "1"-Stellen ergänzenden Paritätsbits bezeichnet. C ist das bitweise errechnete Verknüpfungsergebnis im Falle einer ODER-Verknüpfung. Es ist ersichtlich, daß die aus den Paritätsbits der Operanden nach derselben logischen ODER-Funktion berechnete Parität für das Ergebniswort falsch ist. Die zutreffende Parität ist zum Vergleich mit P(C) angegeben. In entsprechender Weise ist in der untersten Zeile der Fall einer logischen UND-Verknüpfung von A und B dargestellt.A and B represent the operands consisting of four bit positions (Data words). With P (A) or P (B), the parity bits supplement the operands to an even number of "1" places designated. C is the link result calculated bit by bit in the case of an OR link. It can be seen that the Incorrect parity for the result word calculated from the parity bits of the operands using the same logical OR function is. The applicable parity is given for comparison with P (C). Correspondingly, the bottom line shows the Case of a logical AND operation of A and B.
Aus dem obigen Beispiel ergibt sich demnach, daß die Parität für die (neuen) Ergebniswörter jeweils neu berechnet werdenFrom the above example it follows that the parity for the (new) result words is recalculated in each case
GE 972 028 40 9826/0518 GE 972 028 40 9826/0518
muß und diesem Binärwort sinnvoll nur bis zu seiner nächsten logischen Verknüpfung beigeordnet werden kann. Damit wird aber die bei der Speicherung und der Übertragung vorhandene und leicht prüfbare Verbindung Datenwort-Parität genau an den fehlerträchtigen Stellen einer logischen Verknüpfung unterbrochen. Da nun im Anschluß an eine nicht triviale logische Operation die Parität des Ergebniswortes jeweils neu berechnet wird, ergibt sich die nachteilige Situation, daß die Prüfung auf korrekte Durchführung der logischen Operation auf der Grundlage der einfachen Paritätsprüfung nicht mehr möglich ist.must and this binary word only makes sense until its next logical connection can be assigned. However, this means that the and Easily testable connection data word parity interrupted precisely at the error-prone points of a logical link. Since, following a nontrivial logical operation, the parity of the result word is recalculated in each case becomes, the disadvantageous situation arises that the check is based on correct execution of the logical operation the simple parity check is no longer possible.
Auf der anderen Seite ist man aber durchaus bestrebt, auch solche logischen und arithmetischen Operationen im Rechner fehlerprüfbar zu machen, vgl. z.B. den Aufsatz von Rao "Error Correction in Adders Using Systematic Subcodes" in IEEE Trans. C-21, Nr. 3, März 1972, Seiten 254-259 mit weiteren Hinweisen. Danach hat es den Anschein, daß man diese Aufgabe zwar zum Teil (meist auch nur für arithmetische Operationen) durch Verwendung von speziellen Prüfcodes lösen kann; die bekanntgewordenen Lösungen sind jedoch im Vergleich zur Paritätsprüfung unvergleichlich aufwendiger und verlangen komplizierte Prüfcodes.On the other hand, efforts are made to include such logical and arithmetic operations in the computer To make it error-verifiable, see e.g. the article by Rao "Error Correction in Adders Using Systematic Subcodes" in IEEE Trans. C-21, No. 3, March 1972, pages 254-259 with others Clues. After that it seems that this task can be partly (mostly only for arithmetic operations) can solve by using special verification codes; however, the solutions that have become known are in comparison for parity check incomparably more complex and require complicated check codes.
Die vorliegende Erfindung geht ferner davon aus, daß in den konventionellen Rechenwerken (meist ALU = Arithmetic and Logical Unit genannt) die Schaltkreise zur Durchführung von mehreren logischen Verknüpfungen, z.B..für die ODER-, UND- und XOR (gleich EXKLUSIVODER) -Funktionen mit zwei Operanden in der Regel gleichzeitig vorgesehen sind. Für die im Einzelfall jeweils geforder^rte Operation wird dann lediglich eine zugehörige Torsteuerung zur Ausgabe des Ergebniswortes aktiviert. Andere Rechenwerke sind für die Berechnung der NOR-, NAND- und XOR-Funktionen ausgelegt. Anzumerken ist dabei, daß die XOR-Funktion gegebenenfalls aus den gleichzeitig verfügbaren ODER-, UND- bzw. NOR-, NAND-Funktionen abgeleitet werden kann, so daß ein Fehler in der XOR-Verknüpfung stets zusammen mit einem Fehler in einer der anderenThe present invention also assumes that in the conventional Arithmetic units (usually called ALU = Arithmetic and Logical Unit) are the circuits for implementing several logical units Links, e.g. for the OR, AND and XOR (equal to EXCLUSIVE OR) -Functions with two operands are usually provided at the same time. For the operation required in each individual case an associated gate control for outputting the result word is then only activated. Other arithmetic units are for the calculation of the NOR, NAND and XOR functions. It should be noted that the XOR function may be off the simultaneously available OR, AND or NOR, NAND functions can be derived, so that an error in the XOR operation always together with a mistake in one of the others
GE 972 028 409826/06 1 8 GE 972 028 409826/06 18
Verknüpfungen auftaucht. Mit den im jeweiligen Rechenwerk vorgesehenen Funktionen sind dann jeweils alle übrigen im System vorkommenden Verknüpfungen durch entsprechende Kombination dieser Grundverknüpfungen darstellbar.Shortcuts shows up. With the ones provided in the respective calculator Functions are then all other links occurring in the system through a corresponding combination of these Basic links can be represented.
Die Aufgabe der Erfindung besteht in der Angabe eines neuen Prüfverfahrens, das die Prüfung von insbesondere logischen Operationen gestattet und ohne zusätzliche und komplizierte Prüfcodes auskommt. Das Prüfverfahren soll auf der Grundlage der konventionellen Paritätsprüfung aufbauen und eine damit vergleichbare Einfachheit und Schnelligkeit aufweisen.The object of the invention is to provide a new one Test method that allows the testing of logical operations in particular and without additional and complicated ones Check codes comes from. The test procedure should be based on the conventional parity check and a have comparable simplicity and speed.
Ausgehend von einem Verfahren zur Prüfung von logischen und arithmetischen Operationen, bei dem die Operanden als mehrere Bitstellen aufweisende Binärwörter mit je einer ergänzenden Paritätsbitstelle vorliegen und die Operanden bitstellenweise der jeweiligen Operation unterworfen werden, ist die Erfindung dadurch gekennzeichnet, daß die Operanden zusätzlich zur erforderten Verknüpfung mindestens einer weiteren Verknüpfungsoperation unterworfen werden, die dadurch bestimmt ist, daß die mindestens zwei derart erhaltenen Verknüpfungsergebnisse bei jeweiliger XOR-Verknüpfung ihrer entsprechenden Bitstellen eine logische Konstante ergeben, daß die den Operanden beigefügten Paritätsbits mindestens einer der Verknüpfungsoperationen unterworfen werden und/oder für mindestens eines der Verknüpfungsergebnisse das zugehörige Paritätsbit neu berechnet wird, und daß die XOR-Verknüpfung über mindestens ein aus den Paritätsbits der Operanden erhaltenes modifiziertes "Paritätsbit" und/oder über mindestens ein zu den Verknüpfungsergebnissen neu berechnetes Paritätsbit auf das Vorliegen einer vorbestimmten logischen Konstanz geprüft wird. Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen gekennzeichnet. Insbesondere ist hervorzuheben, daß gemäß einer bevorzugten Weiterbildung der Erfindung mit kombinierter vertikaler und horizontaler Prüfung neben einer Prüfung der logischen Operationen auch die Datenherkunft mit prüfbar wird.Based on a method for testing logical and arithmetic operations in which the operands are considered several Binary words with bit positions, each with a supplementary parity bit position, and the operands for each bit position are subjected to the respective operation, the invention is characterized in that the operands are in addition to the required Linking are subjected to at least one further linking operation which is determined in that the at least two combination results obtained in this way with the respective XOR operation of their corresponding bit positions result in a logical constant that the parity bits attached to the operands at least one of the logic operations are subjected and / or the associated parity bit is recalculated for at least one of the link results, and that the XOR operation via at least one modified "parity bit" obtained from the parity bits of the operands and / or via at least one to the link results newly calculated parity bit is checked for the presence of a predetermined logical constancy. More beneficial Refinements of the invention are characterized in the subclaims. In particular, it should be emphasized that according to a preferred development of the invention with combined vertical and horizontal testing in addition to testing the logical Operations, the origin of the data can also be checked.
GE 972 028 409826/0518GE 972 028 409826/0518
w C _w C _
Die Erfindung wird im folgenden anhand von Ausführungs- und Anwendungsbeispielen unter Zuhilfenahme der Zeichnungen näher erläutert.The invention is illustrated below with reference to embodiments and Application examples explained in more detail with the aid of the drawings.
In Fig. 1 sind die zwei Operanden A und B dargestellt, deren ODER-Verknüpfung beispielsweise verlangt ist. Die Operanden A und B liegen in Binärdarstellung vor; ihre jeweiligen Datenbitsteilen seien mit a. bzw. b. bezeichnet, wobei bei z.B. acht Bitstellen umfassenden Operanden i = O, 1, ... 7 ist. Jeder Operand A bzw. B ist in der neunten Bitposition durch ein Paritätsbit PA bzw. PB ergänzt. In den folgenden Beispielen wird jeweils eine "ungerade Parität" benutzt, d.h. das Paritätsbit ergänzt die "1"-Stellen des Datenworts auf eine insgesamt ungerade Zahl. Das Paritätsbit A ergibt sich beispielsweise zu:In Fig. 1, the two operands A and B are shown, the OR operation of which is required, for example. The operands A and B are in binary form; their respective data bit parts are with a. or b. denotes, with e.g. eight Operands i = O, 1, ... 7 comprising bit positions. Everyone Operand A or B is supplemented in the ninth bit position by a parity bit PA or PB. In the following examples an "odd parity" is used in each case, i.e. the parity bit supplements the "1" digits of the data word to a total of odd Number. The parity bit A results, for example, as follows:
PA = 1 V aQ V ax V a2 .,. V a? PA = 1 V a Q V a x V a 2 .,. V a ?
Dabei bedeutet das Zeichen V eine EXKLUSIV-ODER-Verknüpfung (im folgenden XOR genannt). In entsprechender Weise ergibt sich die ungerade Parität PB.The character V means an EXCLUSIVE-OR link (hereinafter referred to as XOR). The odd parity PB results in a corresponding manner.
Die der logischen Operation zu unterziehenden Operanden A und B werden mit ihren Paritätsbits einem Rechenwerk zugeführt, in dem die Operanden bitstellenweise der gewünschten ODER-Funktion und zusätzlich der UND- und XOR-Funktion unterzogen werden. Die Ergebniswörter sind Ω für die ODER-Funktion, α für die ÜND-Funktion und X für die XOR-Funktion.The operands A and B to be subjected to the logical operation are fed to an arithmetic unit with their parity bits, in to which the operands are subjected to the desired OR function for each bit position and also to the AND and XOR function. The result words are Ω for the OR function, α for the ÜND function and X for the XOR function.
Es ist festzustellen, daß die Durchführung dieser drei Funktionen keinen erhöhten Aufwand bedeutet, auch wenn letztlich nurIt should be noted that performing these three functions does not mean any increased effort, even if only ultimately
GE 972 028 40 9826/0518GE 972 028 40 9826/0518
das Ergebnis für die ODER-Funktion gewünscht ist. Die heute üblichen Rechenwerke bilden vielmehr in der Regel von den Eingangsoperanden gleichzeitig die verschiedenen im Rechenwert vorgesehenen Operationsergebnisse, wobei allerdings bisher die nicht benötigten Verknüpfungsergebnisse (hier α und X) durch Ausgangstorschaltungen unterdrückt werden. Schließlich wurden auch bereits sogenannte logische Speicher (CLIM = Cellular Logic-In-Memory) vorgeschlagen, die beim Auslesen gleich verschiedene logische Verknüpfungen der Speicherdaten mitliefern, vgl. z.B. IEEE Transactions on Computers, Vol. C-I8, Kr. 8, August 1969, Seiten 719-727. Das in diesem Beispiel benutzte Funktionentripel aus UND-, ODER- und XOR-Funktion stellt einen typischen Funktionenvorrat dar, aus dem alle übrigen im Rechner verlangten Spezialfunktionen durch Kombination gebildet werden können. Im Rahmen der Erfindung ist es wesentlich, daß die Werte ω., α. und X (i = O, 1, 2, ..) gleichzeitig verfügbar sind und dieses Funktionentripel miteinander geXORt eine logische Konstante ergibt entsprechend der Beziehung:the result is required for the OR function. Rather, the arithmetic units customary today usually form the input operands at the same time the different operation results provided in the calculated value, although so far the Linking results that are not required (here α and X) are suppressed by output gate circuits. Finally were So-called logical memories (CLIM = Cellular Logic-In-Memory) have also already been proposed, which are different when read out provide logical links to the storage data, see e.g. IEEE Transactions on Computers, Vol. C-I8, Kr. 8, August 1969, pages 719-727. The one used in this example Function triple of AND, OR and XOR functions represents a typical set of functions from which all the others special functions required in the computer can be formed by combination. In the context of the invention, it is essential that the values ω., α. and X (i = O, 1, 2, ..) at the same time are available and this function triple XORed with each other results in a logical constant according to the relationship:
ω1 V Q1 V X1 = Oω 1 VQ 1 VX 1 = O
Diese Eigenschaft weisen aber auch andere Funktionsgruppen auf, z.B. NOR, NAND und XOR. Eine detailliertere Zusammenstellung
der in F:
gegeben.However, this property also has other function groups, such as NOR, NAND and XOR. A more detailed compilation of those in F:
given.
der in Frage kommenden Funktion/ist in der Tabelle nach Fig. 3the relevant function / is in the table according to FIG. 3
Während nun bei den bekannten Verfahren zur Durchführung von logischen Operationen am Eingang des Rechenwerkes die jeweiligen Paritätsbits von den Operanden abgetrennt und nur die Operanden selbst bitweise verknüpft werden, werden bei der vorliegenden Erfindung auch die Paritätsbits PA und PB der ODER-, UND- und XOR-Verknüpfung im Rechenwerk unterzogen. Am Ausgang sind daher neben den ω.-, α.- und χ.-Werten auch Qie modifizierten "Paritätsbits" 0.Ω, Qa und QX gleichzeitig verfügbar. Es gilt dabei:While in the known method for performing logical operations at the input of the arithmetic unit, the respective parity bits are separated from the operands and only the operands themselves are linked bit by bit, in the present invention the parity bits PA and PB are also the OR, AND and XOR -Linking in the arithmetic unit. In addition to the ω, α and values, Qie modified "parity bits" 0.Ω, Qa and QX are available at the same time at the output. The following applies:
GE 972 028 409826/0518GE 972 028 409826/0518
_ "7 mm. _ "7 mm.
ΟΩ = PA + PBΟΩ = PA + PB
Qa * PA . PB .Qa * PA. PB.
QX = PA V PBQX = PA V PB
Weiterhin werden, wie aus Fig. 1 ersichtlich ist, für die Verknüpfungsergebnisse Ω, α und X die jeweils zutreffenden "neuen" ungeraden Paritäten ΡΩ, Pa und PX gemäß den folgenden Beziehungen berechnet:Furthermore, as can be seen from FIG. 1, the respectively applicable results for the combination results Ω, α and X become "new" odd parities ΡΩ, Pa and PX are calculated according to the following relationships:
ονω
ο
Anhand der nunmehr gleichzeitig vorliegenden Werte entsprechend Fig. 1 läßt sich das erfindungsgemäße Prüfverfahren durchführen. Zur Prüfung auf Fehler, die beim Auslesen der Operanden bzw. bei deren ODER-, UND- oder XOR-Verknüpfung aufgetreten sein können, können dabei die Beziehungen ausgenützt werden:The test method according to the invention can be carried out on the basis of the values that are now simultaneously present in accordance with FIG. 1. To check for errors that may have occurred when reading out the operands or during their OR, AND or XOR operation, the relationships can be used:
ω. Va. VX. = O oderω. Va. VX. = O or
Q!l V Qa V QX = OQ! L V Qa V QX = O
Diese "vertikale Prüfung" auf die logische Konstanz "O" weist bei einem abweichenden Ergebnis "1" direkt auf einen entsprechenden Fehler der oben gezeigten Art hin. Die zuletzt angegebenen Beziehungen sind wegen der zugrundeliegenden Boole'sehen BeziehungThis "vertical test" points to the logical constancy "O" in the event of a deviating result "1" directly to a corresponding one Errors of the kind shown above. The relationships given last are because of the underlying Boolean relationship
(a + b) V (a . b) V (a V b) = O(a + b) V (a. b) V (a V b) = O
stets gültig. Die dazugehörige Prüfschaltung kann in einfacher Weise mit wenigen Standard-XOR-Gliedern realisiert werden.always valid. The associated test circuit can be implemented in a simple manner with a few standard XOR gates.
Mit den oben beschriebenen Prüfverfahren lassen sich demnachThe test methods described above can therefore be used
GE 972 028 409826/051 8GE 972 028 409826/051 8
Auslesefehler sowie Fehler bei den logischen Operationen prüfen. Diese Verfahren lassen sich weiter in vorteilhafter Weise erfindungsgemäß so ausgestalten, daß auch die gleichzeitige Prüfung der Datenherkunft mit ermöglicht wird, so daß eine fehlerhaft gespeicherte Bitstelle (Speicherfehler) mit entsprechendem Paritätsfehler erfaßt werden kann. Die erfindungsgemäße Erweiterung des beschriebenen Prüfverfahrens in Form einer zusätzlichen "horizontalen Prüfung" macht solche Speicherfehler gleichzeitig mit prüfbar.Check readout errors and errors in logical operations. These methods can be further advantageous Way according to the invention so that the simultaneous Checking the origin of the data is also enabled, so that an incorrectly stored bit position (memory error) can be detected with a corresponding parity error. The inventive expansion of the test method described In the form of an additional "horizontal check", such memory errors can also be checked at the same time.
Es. sei dazu noch einmal auf die Bildungsformel für PX Bezug genommen. Sie lautete:It. refer again to the educational formula for PX taken. It read:
PX » 1 V Xo V X1 ... X7
Für QX gilt:PX »1 VX o VX 1 ... X 7
The following applies to QX:
QX = PA V PB = (1 V aQ Va1 ... Va7) V (l V b V b ..' V b?) Das aber läßt sich umformen zuQX = PA V PB = (1 V a Q Va 1 ... Va 7 ) V (l V b V b .. 'V b ? ) But that can be transformed
QX = (aQ V bQ) V U1 V bx) ... V (a? V b?)QX = (a Q V b Q ) VU 1 V b x ) ... V (a ? V b ? )
ÄÄ VA, ... V λ>
Ol 7 Ä Ä VA, ... V λ>
Ol 7
Zwischen PX und QX gilt demnach aber die Beziehung:However, the relationship between PX and QX therefore applies:
PX = 1 V QX
oder auch PX = QXPX = 1 V QX
or also PX = QX
Diese "horizontale" Prüfbeziehung ermöglicht die Prüfung auf Speicherfehler und ist in Fig. 1 besonders veranschaulicht.This "horizontal" test relationship enables the test for memory errors and is particularly illustrated in FIG.
In außerordentlich vorteilhafter Weise lassen sich nun schließlich die "vertikale" und "horizontale" Prüfung vereinen, so daß mit geringem Aufwand eine vollständige Prüfung auf Speicher-Finally, in an extremely advantageous manner combine the "vertical" and "horizontal" tests, so that a complete test for memory
GE 972 028 A09826/0518GE 972 028 A09826 / 0518
und Auslese- sowie Verknüpfungsfehler gegeben ist. Es gilt ja andererseits:and readout and link errors are present. On the other hand, it is true:
PflVPaVPX=l
Durch Einsetzen vonPflVPaVPX = l
By inserting
PX = 1 ¥ QX oder PX = QXPX = 1 ¥ QX or PX = QX
ergibt sich die erfindungsgemäße Prüfgleichung:the test equation according to the invention results:
PfiVPaVQX=O (1)PfiVPaVQX = O (1)
die ebenfalls in Fig. 1 besonders veranschaulicht ist und deren schaltungsmäßige Realisierung ebenfalls nur wenige Standard-XOR-Glieder verlangt.which is also particularly illustrated in Fig. 1 and its circuit implementation also only a few standard XOR elements demands.
In entsprechender Weise ergibt sich die alternative Prüfgleichung :The alternative test equation results in a corresponding manner :
Q Ω V Q α V PX = 1 (2)Q Ω V Q α V PX = 1 (2)
die in Fig. 1 in unterbrochenen Linien veranschaulicht ist.which is illustrated in Fig. 1 in broken lines.
Ein Vergleich der Gleichungen (1) und (2) läßt deutlich werden, daß die Prüfung nach Gleichung (1) in den meisten Fällen vorteilhafter ist. Da für die weitere Datenverarbeitung im Anschluß an die logische Operation ohnehin für die Ergebniswörter die neuen Paritäten ermittelt werden müssen, bedeutet die Errechnung von ΡΩ und Pa keinen Mehraufwand. Auf der anderen Seite reicht die Anwendung der logischen XOR-Operation auf die Operandenparitäten PA und PB, d.h. die Berechnung von QX, völlig aus. 0Ω und Qa brauchen nicht berechnet zu werden. Ist jedoch in einem anderen Ausführungsbeispiel statt der in diesem Aus-A comparison of equations (1) and (2) makes it clear that the test according to equation (1) in most cases is more advantageous. As for the further data processing after the logical operation anyway for the result words the new parities have to be determined, the calculation of ΡΩ and Pa does not mean any additional effort. On the other On the other hand, the application of the logical XOR operation to the operand parities PA and PB, i.e. the calculation of QX, is completely sufficient the end. 0Ω and Qa do not need to be calculated. But it is in another exemplary embodiment instead of the
GE 972 028 409826/0518 GE 972 028 409826/0518
führungsbeispiel verlangten ODER-Funktion die XOR-Verknüpfung verlangt, müßte zur Erkennung von Verknüpfungsfehlern die alternative Gleichung (2) benutzt werden. Allgemein kann gesagt werden, daß zur Erkennung von Datenherkunfts- und Verknüpfungsfehlern die jeweils zu dem gewünschten Verknüpfunosergebnis zugehörige neue Parität mit in die Prüfung einbezogen werden muß.The OR function required by the example requires the XOR link, the alternative would have to be to detect link errors Equation (2) can be used. In general, it can be said that for the detection of data origin and link errors, the respective link to the desired link result associated new parity must be included in the check.
In den Fig. 2a - 2d sind einige Beispiele für das erfindungsgemäße Prüfverfahren dargestellt, über dem Strich sind jeweils zwei 8-stellige Operanden A, B mit den ergänzenden Paritäten angegeben. Darunter sind die Verknüpfungsergebnisse für die Operanden-Bitstellen, die neu errechneten Paritäten sowie die modifizierten Operandenparitäten aufgeführt. Die erfindungsgemäße Prüfbeziehung ist in durchzogenen Linien umrahmt.In Figs. 2a-2d are some examples of the invention Test methods shown above the line are respectively two 8-digit operands A, B with the additional parities specified. Below that are the link results for the operand bit positions, the newly calculated parities and the modified operand parities are listed. The test relationship according to the invention is framed in solid lines.
Im Beispiel nach Fig. 2a ist kein Speicher-, Auslese- oder Verknüpfungsfehler feststellbar; die Prüfgleichung ist vielmehr erfüllt. Auch die in unterbrochenen Linien umrahmte alternative Prüfbeziehung ist erfüllt.In the example of Fig. 2a is no memory, readout or Linkage errors detectable; rather, the test equation is Fulfills. The alternative test relationship framed in broken lines is also fulfilled.
Im Beispiel nach Fig. 2b wird derselbe Operand A von Fig. 2a mit einem anderen Operanden B1 verknüpft. Die gegenüber B abweichenden Bitstellen sind unterstrichen. Auch hier liegt kein Fehler vor, wie sich aus der Erfüllung der Prüfgleichung(en) zeigt.In the example according to FIG. 2b, the same operand A from FIG. 2a is combined with another operand B 1 . The bit positions that differ from B are underlined. Here, too, there is no error, as can be seen from the fulfillment of the test equation (s).
Im Beispiel nach Fig. 2c weist der Operand B einen Speicherfehler auf, die Parität ist für B richtig (vgl. Fig. 2a); die zweite Bitstelle des Operanden B ist aber verfälscht, so daß der Operand B dem Operanden B" von Fig. 2b gleicht. Demzufolge ergibt die Prüfgleichung eine "1" statt einer zu erwartenden "0". Aus Fig. 2c ist weiterhin ersichtlich, daß nicht alle Werte von Fig. 1 erforderlich sind. Es ist nur die eine Prüfgleichung benutzt. Schließlich ist in Fig. 2d für die Oder-Funktion von A und B in der ersten Bitstelle ein Verknüpfungs-In the example according to FIG. 2c, the operand B has a memory error, the parity is correct for B (cf. FIG. 2a); the However, the second bit position of the operand B is corrupted, so that the operand B is the same as the operand B ″ of FIG. 2b the test equation yields a "1" instead of an expected one "0". It can also be seen from FIG. 2c that not all values from FIG. 1 are required. It's just the one test equation used. Finally, in Fig. 2d for the OR function of A and B in the first bit position there is a link
409826/0518409826/0518
GE 972 028GE 972 028
fehler angenommen, der mit der Prüfgleichung ebenfalls erkannt wird.error assumed, which was also recognized with the test equation will.
Das vorgeschlagene Prüfverfahren kann ebenfalls zur Prüfung von arithmetischen Operationen, z.B. der Addieroperation angewendet werden. Für die Summenformel gilt bekanntlich:The proposed test method can also be used to test arithmetic operations, e.g. the adding operation will. As is well known, the following applies to the empirical formula:
wobei c. den Übertrag von der nächstniedrigeren Stelle bedeutet. Es ist lediglich erforderlich, die ungerade Parität PC für die Überträge aller Bitpositionen zu bilden, d.h.where c. means the carryover from the next lower position. It is only necessary to form the odd parity PC for the transfers of all bit positions, i.e.
PC - IVc0Vc1...Vc7 PC - IVc 0 Vc 1 ... Vc 7
und mit (PAVPB) gleich QX zu XORen. Die ungerade Parität für das Summenwort ergibt sich zuand with (PAVPB) equals QX to XORs. The odd parity for the sum word results in
PS = IVs0Vs1...Vs7
und nach entsprechender Umformung zuPS = IVs 0 Vs 1 ... Vs 7
and after appropriate reshaping
PS = (X0Vx1-^Vx7) V PC = QX V PC Diese Prüfgleichung muß im fehlerfreien Fall erfüllt sein.PS = (X 0 Vx 1 - ^ Vx 7 ) V PC = QX V PC This test equation must be fulfilled if there are no errors.
Die oben anhand von speziellen Ausführungsbeispielen beschriebene Erfindung läßt sich ohne weiteres auf byteweise, d.h. mehrere Bitstellen als Einheit aufweisende Datenwörter anwenden, wenn den möglichen Überträgen Rechnung getragen wird. Weiterhin können auch statt ungerader gerade Paritäten gewählt sowie andere Funktionengruppen zugrundgelegt werden. In der Tabelle nach Fig. 3 sind die möglichen Funktionsgruppen zusammengestellt, die anstelle der in den Ausführungsbeispielen verwendeten ODER-, UND- und XOR-Funktionen (Spalte 1 in Fig. 3) zugrundegelegt werden können, ohne den Rahmen der vorliegenden Erfindung zu verlassen.The invention described above with the aid of specific exemplary embodiments can readily be implemented in a byte-wise manner, i. E. Use data words having a plurality of bit positions as a unit, if the possible transfers are taken into account. Farther can also be selected instead of odd even parities and other function groups can be used as a basis. In the table according to Fig. 3, the possible function groups are compiled, which are used instead of the OR, AND and XOR functions used in the exemplary embodiments (column 1 in FIG. 3) can be without departing from the scope of the present invention.
GE 972 028 409826/0518GE 972 028 409826/0518
Claims (11)
geprüft wird.ΡΩ V Pa V QX = 0
is checked.
geprüft wird.QiI V Qa V PX = 1
is checked.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19722262002 DE2262002A1 (en) | 1972-12-19 | 1972-12-19 | PROCEDURE FOR CHECKING LOGICAL OPERATIONS BASED ON A PARITY CHECK |
FR7338729A FR2211144A5 (en) | 1972-12-19 | 1973-10-23 | |
JP12300673A JPS4991152A (en) | 1972-12-19 | 1973-11-02 | |
GB5371573A GB1412361A (en) | 1972-12-19 | 1973-11-20 | Data processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19722262002 DE2262002A1 (en) | 1972-12-19 | 1972-12-19 | PROCEDURE FOR CHECKING LOGICAL OPERATIONS BASED ON A PARITY CHECK |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2262002A1 true DE2262002A1 (en) | 1974-06-27 |
Family
ID=5864780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19722262002 Pending DE2262002A1 (en) | 1972-12-19 | 1972-12-19 | PROCEDURE FOR CHECKING LOGICAL OPERATIONS BASED ON A PARITY CHECK |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPS4991152A (en) |
DE (1) | DE2262002A1 (en) |
FR (1) | FR2211144A5 (en) |
GB (1) | GB1412361A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0193711A1 (en) | 1985-01-25 | 1986-09-10 | Siemens Aktiengesellschaft | Monitoring circuit using parity bits for a computer executing arithmetic operations |
DE3840969A1 (en) * | 1987-12-04 | 1989-06-15 | Hitachi Ltd | INTEGRATED SEMICONDUCTOR CIRCUIT |
-
1972
- 1972-12-19 DE DE19722262002 patent/DE2262002A1/en active Pending
-
1973
- 1973-10-23 FR FR7338729A patent/FR2211144A5/fr not_active Expired
- 1973-11-02 JP JP12300673A patent/JPS4991152A/ja active Pending
- 1973-11-20 GB GB5371573A patent/GB1412361A/en not_active Expired
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0193711A1 (en) | 1985-01-25 | 1986-09-10 | Siemens Aktiengesellschaft | Monitoring circuit using parity bits for a computer executing arithmetic operations |
DE3840969A1 (en) * | 1987-12-04 | 1989-06-15 | Hitachi Ltd | INTEGRATED SEMICONDUCTOR CIRCUIT |
US5043990A (en) * | 1987-12-04 | 1991-08-27 | Hitachi, Ltd. | Semiconductor integrated circuit device |
Also Published As
Publication number | Publication date |
---|---|
FR2211144A5 (en) | 1974-07-12 |
GB1412361A (en) | 1975-11-05 |
JPS4991152A (en) | 1974-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3853206T2 (en) | METHOD AND DEVICE FOR BYTIC WRITE ERROR ENCODING. | |
DE2260850C2 (en) | Circuit arrangement for the detection of single and multiple errors and for the correction of single and certain multiple errors | |
DE2619159C2 (en) | Error detection and correction device | |
DE3125048C2 (en) | ||
DE60117066T2 (en) | Method and device for checking error-correcting codes | |
DE69619372T2 (en) | ERROR DETECTING AND CORRECTIVE PROCEDURE | |
DE1499722B1 (en) | DEVICE FOR THE MODIFICATION OF INFORMATION WORDS | |
DE2421112A1 (en) | MEMORY ARRANGEMENT | |
DE69126057T2 (en) | An information processing device with an error checking and correction circuit | |
DE102015113414B4 (en) | Error correction using WOM codes | |
DE2659031A1 (en) | ERROR CORRECTION AND CONTROL SYSTEM | |
DE69121733T2 (en) | Technology for the built-in self-test for read-only memory | |
DE69904618T2 (en) | DETECTION TECHNOLOGY OF STORAGE SECTION ERRORS AND SINGLE, DOUBLE AND TRIPLEBIT ERRORS | |
DE102020110787B3 (en) | CIRCUIT AND PROCEDURE FOR ENCODING OR DECODING A DATA WORD | |
DE1250163B (en) | Device for the parity check of memory words | |
DE2450468A1 (en) | ERROR CORRECTION FOR A MEMORY | |
DE102013222136B9 (en) | Circuit and method for multi-bit correction | |
DE2047868A1 (en) | Circuit for correcting individual errors in the words of a cyclic (n, k) code | |
DE2441351A1 (en) | CIRCUIT ARRANGEMENT FOR THE SELF-CHECKING PARITY CHECK FOR TWO OR MORE INDEPENDENT DATA CHANNELS | |
EP1444700B1 (en) | Memory unit test | |
DE2262002A1 (en) | PROCEDURE FOR CHECKING LOGICAL OPERATIONS BASED ON A PARITY CHECK | |
DE4117726C2 (en) | Error correction procedure and device for its implementation | |
DE102018126685B3 (en) | Processing of data | |
DE102019113970B4 (en) | DETECTION OF ADDRESSING ERRORS | |
DE1937259A1 (en) | Self-checking fault detection circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OHJ | Non-payment of the annual fee |