[go: up one dir, main page]

DE10351442A9 - Apparatus and method for forming a signature - Google Patents

Apparatus and method for forming a signature Download PDF

Info

Publication number
DE10351442A9
DE10351442A9 DE10351442A DE10351442A DE10351442A9 DE 10351442 A9 DE10351442 A9 DE 10351442A9 DE 10351442 A DE10351442 A DE 10351442A DE 10351442 A DE10351442 A DE 10351442A DE 10351442 A9 DE10351442 A9 DE 10351442A9
Authority
DE
Germany
Prior art keywords
signature
code generator
code
additional
shift register
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
DE10351442A
Other languages
German (de)
Other versions
DE10351442A1 (en
Inventor
Werner Harter
Ralf Angerbauer
Eberhard Boehl
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE10351442A priority Critical patent/DE10351442A1/en
Priority to PCT/DE2003/004177 priority patent/WO2004057356A1/en
Priority to JP2005502519A priority patent/JP4520407B2/en
Priority to ES03795761T priority patent/ES2262019T3/en
Priority to AU2003298070A priority patent/AU2003298070A1/en
Priority to EP03795761A priority patent/EP1579230B1/en
Priority to US10/539,495 priority patent/US7461311B2/en
Priority to AT03795761T priority patent/ATE325347T1/en
Priority to DE50303260T priority patent/DE50303260D1/en
Publication of DE10351442A1 publication Critical patent/DE10351442A1/en
Publication of DE10351442A9 publication Critical patent/DE10351442A9/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318566Comparators; Diagnosing the device under test

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Supports Or Holders For Household Use (AREA)

Abstract

Vorrichtung und Verfahren zur Bildung einer Signatur, wobei eine vorgegebene Anzahl an Speicherelementen eines Schieberegisters vorgesehen ist, an welche zu prüfenden Eingangsdaten bitweise und parallel als aufeinander folgende Datenwörter angelegt werden und welche die Eingangsdaten in einem vorgebbaren Takt seriell weiter schieben, wobei nach einer bestimmten Anzahl von Datenwörtern und Takten eine Signatur in dem Schieberegister gebildet wird, wobei zusätzlich ein Codegenerator vorgesehen ist, der wenigstens eine zusätzliche Bitstelle in wenigstens einem zusätzlichen Speicherelement aus jedem Datenwort in der Signatur erzeugt.Apparatus and method for forming a signature, wherein a predetermined number of memory elements of a shift register is provided, to which input data to be tested bitwise and parallel applied as consecutive data words and which further push the input data serially in a predetermined clock, wherein after a certain number a signature is formed in the shift register of data words and clocks, wherein additionally a code generator is provided which generates at least one additional bit position in at least one additional memory element from each data word in the signature.

Description

Für die Bildung von Signaturen werden MISR-Schaltungen benutzt (MISR = Multiple Input Signature Register), wie sie beispielsweise in der Veröffentlichung Built-In Test for VLSI: Pseudorandom Techniques, von Paul H. Bardell, William H. McAnney und Jacob Savir auf Seite 124 f beschrieben sind. Dabei ist eine vorgegebene Anzahl an Schieberegistern vorgesehen, an welche zu prüfende Daten in einer Folge angelegt werden. Dabei werden die parallel anstehenden Daten eingekoppelt und in einem vorgegebenen Takt durch die Schieberegister weitergeschoben. Nach einer genau festgelegten Anzahl von Datenwörtern und Takten liegt in den Schieberegistern dann ein Signaturwert vor, der mit einem vorbekannten Signaturwert vergleich- und überprüfbar ist. Um einen Ablauf und die dabei angelegten Daten auf Fehlerfreiheit zu prüfen, genügt es, den erhaltenen Signaturwert mit dem erwarteten Signaturwert zu vergleichen.For education Signatures use MISR circuits (MISR = Multiple Input Signature Register), as described for example in the publication Built-In Test for VLSI: Pseudorandom Techniques, by Paul H. Bardell, William H. McAnney and Jacob Savir on page 124 f. there a predetermined number of shift registers is provided to which to be tested Data is created in a sequence. This will be the parallel upcoming Data coupled and in a given clock through the shift registers pushed further. After a specified number of data words and Then there is a signature value in the shift registers, which is comparable and verifiable with a previously known signature value. Around a procedure and the thereby created data for accuracy check, enough it, the obtained signature value with the expected signature value to compare.

Problematisch wird das Verfahren und die Vorrichtung aus dem Stand der Technik dann, wenn zu einem Zeitpunkt T ein Fehler an einem bestimmten Eingang vorliegt, da dann zunächst ein falscher Wert in das betroffene Schieberegister geschrieben wird. Die berechnete Endsignatur wird deshalb von der erwarteten Signatur abweichen. Tritt jedoch zusätzlich zu einem nachfolgenden Zeitpunkt T+1 an einem nachfolgenden, insbesondere direkt nachfolgenden Eingang ein Fehler auf, so wird der ursprüngliche Fehler am ersten Eingang nach dem Verschieben durch die Schieberegister mit einer Anzahl von Takten, die dem Abstand der Eingänge und Zeitpunkte entspricht, insbesondere mit einem Takt wieder kompensiert. So werden Fehler, die zu solch problematischen Zeitpunkten und Datenwortpositionen auftreten, bei der Signaturbildung nicht bemerkt.Problematic becomes the method and the device of the prior art then if at a time T an error at a particular input is present since then first an incorrect value is written to the affected shift register. The calculated end signature will therefore be of the expected signature differ. Occurs, however, in addition at a subsequent time T + 1 at a subsequent, in particular directly following input an error, then the original Error at the first input after shifting through the shift registers with a number of bars that indicate the distance of the inputs and Times corresponds, in particular compensated with a clock again. Thus, errors that are at such problematic times and data word positions occur when the signature is not noticed.

Eine Möglichkeit, bei der Einspeicherung Vorsorge zu treffen, um diese Problematik auszuschließen, ist die Einspeisung des inversen Datenwortes folgend auf ein Datenwort, so dass ein Fehler in jedem Fall nicht kompensiert, sondern bemerkt wird. Dies verdoppelt aber die Anzahl der notwendigen Operationen und Takte.A Possibility, to make provision for this problem in the storage ruled out is the injection of the inverse data word following a data word, so that a mistake is not compensated in any case, but noticed. But this doubles the number of necessary operations and Bars.

So zeigt sich, dass der Stand der Technik nicht in jeder Hinsicht optimale Ergebnisse zu liefern vermag, und es ergibt sich daraus die Aufgabe, eine verbesserte Vorrichtung und ein verbessertes Verfahren zur Beherrschung der oben genannten Problematik im Rahmen der Bildung von Signaturen zu entwickeln.So shows that the state of the art is not optimal in every respect Results, and the result is the task of an improved device and an improved method for Mastery of the above problem in education to develop signatures.

Vorteile der ErfindungAdvantages of invention

Die Erfindung geht aus von einer Vorrichtung und einem Verfahren zur Bildung einer Signatur, wobei eine vorgegebene Anzahl an Speicherelementen eines Schieberegisters (z.B. Flip-Flops) vorgesehen ist, an welche zu prüfende Eingangsdaten bitweise und parallel als aufeinander folgende Datenwörter insbesondere mit einem vorgebbaren ersten Takt wechselnd angelegt werden und welche die Eingangsdaten in einem zweiten vorgebbaren Takt, der zweckmäßiger Weise gleich dem ersten Takt ist, seriell weiterschieben und nach einer bestimmten Anzahl von Datenwörtern und Takten eine Signatur in dem Schieberegister gebildet wird, wobei vorteilhafter Weise zusätzlich ein Codegenerator vorgesehen ist, der wenigstens eine zusätzliche Bitstelle in dem Schieberegister aus jedem Datenwort in der Signatur erzeugt. D. h. vorteilhafter Weise wird das MISR um wenigstens eine Bitstelle erweitert, wobei diese Bitstelle jeweils aus dem jeweils anliegenden kompletten Datenwort gewonnen wird und in die Signatur mit eingeht. Dadurch kann vorteilhafter Weise die Sicherheit zur Beherrschung oben genannter Problematik erzielt werden, ohne eine Vielzahl von zusätzlichen Operationen und Takten bei der Signaturbildung durchzuführen.The The invention is based on a device and a method for Forming a signature, wherein a predetermined number of memory elements of a Shift register (for example, flip-flops) is provided, to which tested Input data bitwise and in parallel as consecutive data words in particular be created with a predeterminable first clock alternating and which the input data in a second predetermined clock, the expedient manner is equal to the first clock, move on serially and after one certain number of data words and clocking a signature is formed in the shift register, wherein advantageously in addition a code generator is provided, the at least one additional Bit position in the shift register generated from each data word in the signature. Ie. Advantageously, the MISR becomes at least one bit position extended, wherein this bit position in each case from the appended complete data word is obtained and included in the signature. As a result, the safety for control can be advantageous above problem can be achieved without a variety of additional operations and to perform clocking in the signature formation.

Auf diese Weise erfolgt eine Fehlermaskierung bei den genannten Mehrfachfehlern mit geringstem Schaltungsmehraufwand.On In this way, an error masking occurs with the mentioned multiple errors with minimal additional circuit complexity.

Weiterhin von Vorteil ist, dass die einzelnen Speicherelemente des Schieberegisters durch Antivalenzpunkte, also XOR-Verknüpfungen verbunden sind und auch die einzelnen Bitstellen über diese Antivalenzpunkte eingekoppelt werden.Farther It is advantageous that the individual memory elements of the shift register by anti-equivalence points, so XOR links are connected and also the individual bit positions over these antivalence points are coupled.

Ebenso ist es zweckmäßigerweise denkbar, statt einer Antivalenzverknüpfung, also einem Antivalenzpunkt einen Äquivalenzpunkt, also ein negiertes XOR zu verwenden, um einerseits die einzelnen Bitstellen der Datenwörter und andererseits wenigstens eine Bitstelle des Codegenerators in das entsprechende Schieberegister einzukoppeln.As well it is expedient conceivable, instead of an antivalence link, that is, an antivalence point an equivalence point, So to use a negated XOR, on the one hand the individual Bit positions of the data words and on the other hand, at least one bit position of the code generator in to inject the corresponding shift register.

Vorteilhafter Weise ist der Codegenerator derart ausgebildet, dass dieser einen ECC-Code (Error Check and Correction) realisiert, wie beispielsweise einen Hamming-Code, einen Berger-Code oder einen Bose-Lin-Code, usw., um die an dem jeweiligen ECC-Code entsprechende Anzahl an Bitstellen einer entsprechenden Anzahl an zusätzlichen Speicherelementen (z.B. Flip-Flops) in dem Schieberegister zur Signaturbildung vorzugeben. Im allgemeinsten Fall kann eine Codegeneratortabelle (festverdrahtet oder in SW) verwendet werden, um einem bestimmten Eingangsmuster der Datenworte bzw. Bits ein gewünschtes Codemuster beliebiger Länge zuzuordnen. Im einfachsten Fall ist der Codegenerator vorteilhafter Weise derart ausgebildet, dass dieser ein Parity-Bit bildet und dieses einem zusätzlichen Speicherelement des Schieberegisters vorgibt.Advantageously, the code generator is designed such that it realizes an ECC code (Error Check and Correction), such as a Hamming code, a Berger code or a Bose-Lin code, etc., to those at the respective ECC Code corresponding number of bit positions of a corresponding number of additional memory elements (eg flip-flops) in the shift register to specify the signature. In the most general case, a code generator table (hardwired or in SW) can be used to assign a desired code pattern of any length to a particular input pattern of the data words or bits. In the simplest case, the code generator is tor advantageously designed such that it forms a parity bit and this specifies an additional memory element of the shift register.

Weitere Vorteile und vorteilhafte Ausgestaltungen ergeben sich aus der Beschreibung sowie den Merkmalen der Ansprüche.Further Advantages and advantageous embodiments will become apparent from the description and the features of the claims.

Beschreibung der Ausführungsbeispieledescription the embodiments

1 zeigt eine MISR-Schaltung mit Speicherelementen 100 bis 105, insbesondere Flip-Flops und Antivalenz-, also XOR-Verknüpfungspunkten 106 bis 111. Entsprechend der Rückkopplung ist hier ein modularer Typ dargestellt. Dabei werden die Eingänge Input 0, Input 1, Input 2, Input 3, Input 4 und Input n-1 in die Speicherelemente des Schieberegisters eingekoppelt, die den entsprechenden Bitstellen der angelegten Datenwörter entsprechen sowie in einem vorgegebenen Takt eingelesen und durchgeschoben. In den Schieberegistern ergeben sich dann die Zustände X0, X1, X2, X3, X4 und Xn-1, wobei n eine natürliche Zahl größer Null ist und in diesem konkreten Beispiel sogar mindestens 6 entspricht. 1 shows a MISR circuit with memory elements 100 to 105 , in particular flip-flops and antivalence, ie XOR-connection points 106 to 111 , According to the feedback, a modular type is shown here. The inputs Input 0, Input 1, Input 2, Input 3, Input 4 and Input n-1 are coupled into the memory elements of the shift register, which correspond to the corresponding bit positions of the applied data words and read in and pushed through in a predetermined cycle. The states of the shift registers are then X0, X1, X2, X3, X4 and Xn-1, where n is a natural number greater than zero and in this particular example even equals at least 6.

2 zeigt ebenfalls ein MISR und ebenfalls mit den Speicherelementen, insbesondere Flip-Flops FF 100 bis 105 sowie den Antivalenz-, also XOR-Verknüpfungen 106 bis 111. Weiterhin sind zusätzlich zwei XOR-Verknüpfungen 112 und 113 dargestellt, die in diesem Beispiel nach Speicherelement 100 und Speicherelement 102 bedient werden. Es handelt sich hierbei somit um den Standardtyp eines MISR, wobei die Einkoppelpunkte, also die Antivalenzverknüpfungen 112 und 113 ebenso wie deren Anzahl beliebig in der MISR gewählt werden können. Auch hier sind die Eingänge von 0 bis n-1 dargestellt und ebenso die Zustände der Speicherelemente bzw. Schieberegister von X0 bis Xn-1 mit n∊N. 2 also shows a MISR and also with the memory elements, in particular flip-flops FF 100 to 105 as well as the antivalence, so XOR-links 106 to 111 , Furthermore, there are two additional XOR links 112 and 113 shown in this example after storage element 100 and memory element 102 to be served. This is therefore the standard type of a MISR, the coupling points, ie the antivalence links 112 and 113 as well as their number can be chosen arbitrarily in the MISR. Again, the inputs are represented from 0 to n-1 and also the states of the memory elements or shift registers of X0 to Xn-1 with nεN.

3 zeigt nun die Darstellung dreier Datenwörter DW1, DW2 und DW3, die in dieser Folge an die Eingänge Input 0 bis Input n-1 angelegt werden sollen. Die einzelnen Bitstellen sind mit BS0 bis BSn-1 dargestellt. Liegt nun beispielsweise zum Zeitpunkt T im Datenwort DW1, bestimmt für Input 1 ein Fehler F an und ebenso zum späteren Zeitpunkt T+1 im Datenwort DW2 also bei Input 2, so kompensieren sich diese Fehler nach dem Verschieben mit einem Takt in dem MISR. Gleiches gilt für weitere Fehlerkonstellationen, die aufgrund des Einkoppelzeitpunktes bzw. der Position im Datenwort und dem entsprechenden Input eine Kompensation zur Folge haben. 3 now shows the representation of three data words DW1, DW2 and DW3, which are to be created in this sequence to the inputs Input 0 to Input n-1. The individual bit positions are represented by BS0 to BSn-1. If, for example, at time T in data word DW1, an error F is determined for input 1 and also for input 2 at the later time T + 1 in data word DW2, these errors compensate each other after shifting with a clock in the MISR. The same applies to other error constellations, which have a compensation due to the Einkoppelzeitpunktes or the position in the data word and the corresponding input.

In 4 nun wird das MISR um einen i Bit-Codegenerator 407 erweitert. Dabei stellt i ebenfalls als eine natürliche Zahl größer Null die Anzahl der Bits dar, die durch den Codegenerator in das MISR eingekoppelt werden entsprechend des verwendeten Codes bzw. ECC-Codes im Codegenerator. Entsprechend dieser Anzahl i der ausgegebenen Bitstellen des Codegenerators ist auch eine entsprechende Anzahl an Schieberegistern, hier mit 408 bezeichnet, zusätzlich zum MISR vorgesehen. Im einfachsten Fall erfolgt hier eine Parity-Bit-Bildung, so dass dann nur ein zusätzliches Speicherelement im Schieberegister vorgesehen ist und ein weiterer Input –1.In 4 now the MISR becomes an i bit code generator 407 extended. In this case, i also represents, as a natural number greater than zero, the number of bits which are coupled into the MISR by the code generator in accordance with the code or ECC code used in the code generator. According to this number i of the output bit positions of the code generator is also a corresponding number of shift registers, here with 408 designated in addition to the MISR. In the simplest case, a parity bit formation takes place here, so that then only one additional memory element is provided in the shift register and another input -1.

An welcher Stelle im MISR wenigstens ein zusätzliches Speicherelement bzw. der wenigstens eine zusätzliche Einkoppelpunkt, also Antivalenz- bzw. Äquivalenzpunkt eingebracht wird, ist frei wählbar und hier nur beispielhaft dargestellt. D. h. auch hier in 4 sind wieder die üblichen Speicherelement 100 bis 105 dargestellt, wobei wenigstens ein zusätzliches Speicherelement 408 vorgesehen ist. Die Eingänge der erfindungsgemäßen Vorrichtung Input 04, Input 14, Input 24, Input 34, Input 44 und Input (n-1)4 sind hier nicht nur auf die Antivalenzpunkte, also die XOR-Verknüpfungen geführt, sondern auch dem i Bit-Codegenerator zugeführt. So wird im vorgegebenen Takt aus jedem eingehenden Datenwort eine Zusatzinformation, abhängig vom verwendeten Code (insbesondere ECC), generiert und einer entsprechenden Anzahl von Schieberegistern eingespeist. In diesem Beispiel sind als XOR-Verknüpfungspunkte die Elemente 400 bis 406 vorgesehen, wobei sich in unserem Beispiel neben dem Eingang Input –i und dem Zustand X –i des Speicherelementes 408 die üblichen Zustände X0, X1, X2, X3 und Xn-1 der Speicherelemente im Schieberegister ergeben. Die zusätzlichen Pfeile als Ausgang des i Bit-Codegenerators 407 deuten an, dass in einer anderen Ausführungsform eben mehr als nur eine zusätzliche Bitstelle in das MISR geschrieben werden, abhängig vom verwendeten Code.At which point in the MISR at least one additional memory element or the at least one additional coupling point, that is, antivalence or equivalence point is introduced, is freely selectable and shown here only by way of example. Ie. also here in 4 are again the usual storage element 100 to 105 illustrated, wherein at least one additional memory element 408 is provided. The inputs of the inventive device input 04, input 14, input 24, input 34, input 44 and input (n-1) 4 are here not only on the Antivalenzpunkte, so the XOR operations performed, but also fed to the i bit code generator , Thus, in the given cycle, additional information is generated from each incoming data word, depending on the code used (in particular ECC), and fed to a corresponding number of shift registers. In this example, XOR join points are the elements 400 to 406 provided, in our example, next to the input input -i and the state X -i of the memory element 408 give the usual states X0, X1, X2, X3 and Xn-1 of the memory elements in the shift register. The additional arrows as output of the i-bit code generator 407 indicate that, in another embodiment, more than one additional bit location will be written to the MISR, depending on the code used.

Bei Verwendung eines Hamming-Codes ergibt sich beispielsweise also bei ECC für Einzelfehlerkorrektur, bei 4 Bit Nutzdaten 3 Bit Korrekturcode. Bei ECC Ein-Fehler-Korrektur mit 8 Bit Nutzdaten ergeben sich 4 Bit Korrekturcode. Bei 16 Bit Nutzdaten ergeben sich 5 Bit Korrekturcode und bei 32 Bit Nutzdaten 6 Bit Korrekturcode. Also allgemein 2k >= m+k+1, wobei m der Anzahl der Nutzbits als natürliche Zahl größer 0 entspricht und k den Codebits oder Korrekturbits bzw. dem Korrekturcode ebenfalls als natürliche Zahl. Soll zusätzlich eine Zweifach-Fehler-Detektion erfolgen, ist jeweils 1 Bit mehr Korrekturcode vorzusehen.For example, when using a Hamming code, ECC results in single-error correction, in 4-bit user data 3-bit correction code. ECC single-error correction with 8-bit user data results in 4-bit correction code. For 16-bit user data, 5-bit correction code results and for 32-bit user data 6-bit correction code. So in general 2 k > = m + k + 1, where m corresponds to the number of useful bits as a natural number greater than 0 and k the code bits or correction bits or the correction code also as a natural number. If a double-error detection is to be performed additionally, 1 bit more correction code must be provided in each case.

Wird beispielsweise ein Berger-Code verwendet, sind bei 4 Bit-Nutzdaten zusätzlich 3 Codebits für 5 Zustände vorzusehen, bei 8 Bit Nutzdaten zusätzlich 4 Codebits für 9 Zustände. Bei 16 Bit Nutzdaten zusätzlich 5 Codebits für 17 Zustände und bei 32 Bit Nutzdaten zusätzlich 6 Codebits für 33 Zustände. Hier heißt es allgemein 2k >= m+1 bzw. k >= Id(m+1), wobei m der Nutzbitanzahl der Daten entspricht und k der Codebitanzahl bzw. dem Korrekturcode.If, for example, a Berger code is used, an additional 3 code bits for 5 states must be provided for 4-bit user data, and 4 code bits for 9 states for 8-bit user data. For 16-bit user data, additionally 5 code bits for 17 states and for 32-bit user data additionally 6 code bits for 33 states. In general, 2 k > = m + 1 or k> = Id (m + 1), where m is the number of useful bits of the data ent and k is the number of code bits or the correction code.

Auch weitere Codes, wie der Bose-Lin-Code sind hierbei möglich, wobei die Anzahl der Codierungsbits dabei gleich ist wie die des Berger-Codes aber die Prüfbits lediglich Modulo 4 oder Modulo 8 genommen werden.Also other codes, such as the Bose-Lin code are possible here, where the number of coding bits is the same as that of the Berger code but the check bits only modulo 4 or modulo 8 are taken.

Entsprechend der Anzahl dieser Codierungsbits k ist somit auch die Anzahl der Ausgänge des Codegenerators vorzusehen, also zusätzliche Eingänge (inputs) –i, wobei i = 1 bis k ∊ N und eine ebensolche entsprechende Anzahl an Schieberegistern und Verknüpfungspunkten.Corresponding the number of these coding bits k is thus also the number of Outputs of the Provide code generator, ie additional inputs (inputs) -i, where i = 1 to k ∈ N and a corresponding number at shift registers and nodes.

Das MISR wird somit um mindestens eine Stelle erweitert, indem mindestens ein Parity- oder anderer Code aus den ursprünglichen Daten Input 0 bis Input n – 1 gewonnen wird und in die Signatur, hier im Beispiel in 4 für den modularen Typ (1) gezeichnet, mit eingeht. Gleiches gilt natürlich auch für den Standardtyp (2). Der Codegenerator kann somit ein Parity-Generator sein mit i = 1, wobei in diesem Fall genau ein zusätzliches Flip-Flop notwendig ist. Für den Fall, dass beispielsweise am Input 3 ein Fehler auftritt, wird zusätzlich am Input –1, also dem Parity-Input, ein veränderter Wert eingespeist. Um diesen Wert im Fehlerfall zu maskieren, ist dann genau im nächsten Takt sowohl an Input 4 als auch an Input 0 ein Fehler notwendig. Es liegt hier also ein höherer Hamming-Abstand vor und durch das notwendige präzise zeitliche Verhalten bei der Fehlermaskierung mit Doppelfehler verringert sich die Wahrscheinlichkeit der Maskierung deutlich.The MISR is thus extended by at least one digit by extracting at least one parity or other code from the original data input 0 to input n-1 and into the signature, here in the example in FIG 4 for the modular type ( 1 ) drawn, with received. The same applies of course to the standard type ( 2 ). The code generator can thus be a parity generator with i = 1, in which case exactly one additional flip-flop is necessary. If, for example, an error occurs at input 3, a modified value is also input at input -1, ie the parity input. In order to mask this value in the event of an error, an error is required both in the next cycle at input 4 and at input 0. Thus, there is a higher Hamming distance and the necessary precise temporal behavior in error masking with double error significantly reduces the probability of masking.

Mit einem noch höheren Aufwand an Codebits, wie oben erwähnt, kann der Hamming-Abstand beliebig weiter erhöht werden. Denkbar ist auch statt der Antivalenz- eine Äquvalenzverknüpfung zur Einkopplung zu verwenden, was ebenfalls zu einer geringeren Fehlerauslöschungswahrscheinlichkeit als im Stand der Technik führt.With an even higher one Cost of code bits, as mentioned above, the Hamming distance can be arbitrary further increased become. It is also conceivable, instead of the antivalence, an equivalence link to Coupling to use, which also to a lower error cancellation probability as in the prior art leads.

Als weitere Möglichkeit ergibt sich für den Codegenerator 407 noch eine Tabellenzuordnung, also der Einsatz einer Codegeneratortabelle, bei der abhängig von der eingehenden Bitkombination des Datenwortes eine vorgegebene Anzahl an Codebits in eine entsprechende Anzahl Schieberegister eingekoppelt wird. Durch eine solche Codegeneratortabelle ist eine beliebige Zuordnung von eingehenden Datenbits zu ausgegebenen Codierungsbits möglich.Another possibility is for the code generator 407 nor a table assignment, ie the use of a code generator table, in which depending on the incoming bit combination of the data word, a predetermined number of code bits is coupled into a corresponding number shift register. Such a code generator table allows any assignment of incoming data bits to output coding bits.

Zum Auslesen der gebildeten Signatur aus dem MISR ist im seriellen Fall ein Schaltmittel S vorgesehen, welches die Rückkoppelleitung unterbricht und ein Auslesen der Register seriell ermöglicht. Zusätzlich dazu kann die Rückkopplungsleitung zweckmäßigerweise auf low gelegt werden, damit die Signatur beim Auslesen nicht verfälscht wird. Dies ist in 4 an der Detaildarstellung des Schaltelementes S dargestellt, welches zum einen die Ausgabe (output ermöglicht) und darüber hinaus das Low Potential (z.B. Masse) bereitstellt. Zum Anderen besteht die Möglichkeit, wie mit dem Buchstaben P und der gestrichelten Linie angedeutet, die Schieberegister parallel und damit die Signatur in einem Zuge aus dem MISR auszugeben, um diese mit einer entsprechenden erwarteten Signatur zu vergleichen.To read the signature formed from the MISR, a switching means S is provided in the serial case, which interrupts the feedback line and allows read-out of the registers serially. In addition, the feedback line can be expediently set to low, so that the signature is not falsified during reading. This is in 4 shown on the detailed representation of the switching element S, which on the one hand the output (output allows) and beyond the low potential (eg ground) provides. On the other hand, there is the possibility, as indicated by the letter P and the dashed line, the shift registers in parallel and thus output the signature in one go from the MISR to compare them with a corresponding expected signature.

Die Erfindung stellt also einen deutlich höheren Sicherheitsfaktor dar als eine gewöhnliche MISR und dies bei deutlich geringerem Aufwand als eine ständig notwendige Inversion der Datenwörter zum Ausgleich einer Fehlermaskierung.The Thus, the invention represents a significantly higher safety factor as an ordinary one MISR and this at a significantly lower cost than a constantly necessary Inversion of the data words to compensate for an error masking.

Damit ist die Erfindung bei allen sicherheitskritischen Anwendungen, insbesondere im Fahrzeugbereich wie bei Bremsensteuerungen (ABS, ASR, ESP, usw.), steer-by-wire, break-by-wire, also allgemein x-by-wire, Airbag, Motorsteuerung, Getriebesteuerung, usw. einsetzbar. Ebenso Einsatz finden kann die Erfindung bei Mikrocontrollern oder anderen Halbleiterstrukturen im Rahmen eines Tests sowie bei allen BIST-Strukturen (built-in self-test) und auch zur Optimierung von Produktionstests.In order to The invention is in all safety-critical applications, in particular in the vehicle sector as with brake controls (ABS, ASR, ESP, etc.), steer-by-wire, break-by-wire, generally x-by-wire, airbag, Motor control, transmission control, etc. can be used. Likewise use The invention can be found in microcontrollers or other semiconductor structures as part of a test and in all BIST structures (built-in self-test) and also to optimize production tests.

Claims (10)

Vorrichtung zur Bildung einer Signatur, wobei eine vorgegebene Anzahl an Speicherelementen eines Schieberegisters vorgesehen ist, an welche zu prüfenden Eingangsdaten bitweise und parallel als aufeinander folgende Datenwörter angelegt werden und welche die Eingangsdaten in einem vorgebbaren Takt seriell weiter schieben, wobei nach einer bestimmten Anzahl von Datenwörtern und Takten eine Signatur in dem Schieberegister gebildet wird dadurch gekennzeichnet, dass zusätzlich ein Codegenerator vorgesehen ist, der wenigstens eine zusätzliche Bitstelle in wenigstens einem zusätzlichen Speicherelement aus jedem Datenwort in der Signatur erzeugt.Apparatus for forming a signature, wherein a predetermined number of memory elements of a shift register is provided to which input data to be tested are applied bit by bit and parallel as successive data words and which serially shift the input data serially in a predeterminable clock, after a certain number of data words and clocks a signature in the shift register is formed, characterized in that in addition a code generator is provided which generates at least one additional bit position in at least one additional memory element from each data word in the signature. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die einzelnen Speicherelemente des Schieberegisters durch Antivalenzpunkte verbunden sind und die einzelnen Bits der Datenwörter in diese Antivalenzpunkte ebenso wie die wenigstens eine zusätzliche Bitstelle des Codegenerators zur Signaturbildung eingekoppelt werden.Device according to claim 1, characterized in that that the individual memory elements of the shift register by antivalence points are connected and the individual bits of the data words in these antivalence points as well as the at least one additional bit position of the code generator be coupled for signature formation. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die einzelnen Speicherelemente des Schieberegisters durch Äquivalenzpunkte verbunden sind und die einzelnen Bits der Datenwörter in diese Äquivalenzpunkte ebenso wie die wenigstens eine zusätzliche Bitstelle des Codegenerators zur Signaturbildung eingekoppelt werden.Device according to claim 1, characterized in that that the individual memory elements of the shift register by equivalence points are connected and the individual bits of the data words in these equivalence points as well as the at least one additional bit position of the code generator for Signature formation be coupled. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass der Codegenerator derart ausgebildet ist, dass dieser einen ECC Code realisiert und die dem jeweiligen ECC Code entsprechende Anzahl an Bitstellen einer entsprechenden Anzahl an zusätzlichen Speicherelementen zur Signaturbildung vorgibt.Device according to claim 1, characterized in that that the code generator is designed such that this one ECC code implemented and the corresponding ECC code Number of bit positions of a corresponding number of additional ones Specifies memory elements for signature formation. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass der Codegenerator derart ausgebildet ist, dass dieser ein Parity-Bit bildet und dieses an ein zusätzliches Speicherelement vorgibt.Device according to claim 1, characterized in that that the code generator is designed such that it is a parity bit make this and an additional Specifies memory element. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, dass der Codegenerator derart ausgebildet ist, dass dieser einen Hamming Code realisiert.Device according to claim 4, characterized in that that the code generator is designed such that this one Hamming code realized. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, dass der Codegenerator derart ausgebildet ist, dass dieser einen Berger Code realisiert.Device according to claim 4, characterized in that that the code generator is designed such that this one Berger Code realized. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, dass der Codegenerator derart ausgebildet ist, dass dieser einen Bose-Lin Code realisiert.Device according to claim 4, characterized in that that the code generator is designed such that this one Bose-Lin code realized. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, dass der Codegenerator derart ausgebildet ist, dass dieser eine allgemeine Codegeneratortabelle realisiert.Device according to claim 4, characterized in that that the code generator is designed such that this one general code generator table realized. Verfahren zur Bildung einer Signatur, wobei eine vorgegebene Anzahl an Speicherelementen eines Schieberegisters vorgesehen ist, an welche zu prüfenden Eingangsdaten bitweise und parallel als aufeinander folgende Datenwörter angelegt werden und welche die Eingangsdaten in einem vorgebbaren Takt seriell weiter schieben, wobei nach einer bestimmten Anzahl von Datenwörtern und Takten eine Signatur in dem Schieberegister gebildet wird dadurch gekennzeichnet, dass zusätzlich ein Codegenerator vorgesehen ist, der wenigstens eine zusätzliche Bitstelle in wenigstens einem zusätzlichen Speicherelement aus jedem Datenwort in der Signatur erzeugt.A method for forming a signature, wherein a predetermined number of memory elements of a shift register provided is to which to test Input data bitwise and parallel created as consecutive data words be and which the input data in a predetermined clock serial push further, taking after a certain number of data words and Clocking a signature is formed in the shift register thereby marked that in addition a code generator is provided, the at least one additional Bit position in at least one additional memory element each data word generated in the signature.
DE10351442A 2002-12-20 2003-11-04 Device and method for forming a signature Withdrawn DE10351442A1 (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
DE10351442A DE10351442A1 (en) 2002-12-20 2003-11-04 Device and method for forming a signature
PCT/DE2003/004177 WO2004057356A1 (en) 2002-12-20 2003-12-18 Device and method for creating a signature
JP2005502519A JP4520407B2 (en) 2002-12-20 2003-12-18 Apparatus and method for forming an electronic signature
ES03795761T ES2262019T3 (en) 2002-12-20 2003-12-18 DEVICE AND PROCEDURE TO CREATE A SIGNATURE.
AU2003298070A AU2003298070A1 (en) 2002-12-20 2003-12-18 Device and method for creating a signature
EP03795761A EP1579230B1 (en) 2002-12-20 2003-12-18 Device and method for creating a signature
US10/539,495 US7461311B2 (en) 2002-12-20 2003-12-18 Device and method for creating a signature
AT03795761T ATE325347T1 (en) 2002-12-20 2003-12-18 DEVICE AND METHOD FOR FORMING A SIGNATURE
DE50303260T DE50303260D1 (en) 2002-12-20 2003-12-18 DEVICE AND METHOD FOR FORMING A SIGNATURE

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10261250 2002-12-20
DE10261250.1 2002-12-20
DE10351442A DE10351442A1 (en) 2002-12-20 2003-11-04 Device and method for forming a signature

Publications (2)

Publication Number Publication Date
DE10351442A1 DE10351442A1 (en) 2004-07-01
DE10351442A9 true DE10351442A9 (en) 2005-01-05

Family

ID=32404336

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10351442A Withdrawn DE10351442A1 (en) 2002-12-20 2003-11-04 Device and method for forming a signature

Country Status (2)

Country Link
CN (1) CN100492042C (en)
DE (1) DE10351442A1 (en)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3784907A (en) * 1972-10-16 1974-01-08 Ibm Method of propagation delay testing a functional logic system
US4513418A (en) * 1982-11-08 1985-04-23 International Business Machines Corporation Simultaneous self-testing system
US4503537A (en) * 1982-11-08 1985-03-05 International Business Machines Corporation Parallel path self-testing system
US4571724A (en) * 1983-03-23 1986-02-18 Data I/O Corporation System for testing digital logic devices
FR2611052B1 (en) * 1987-02-17 1989-05-26 Thomson Csf ELECTRICAL CIRCUIT TEST DEVICE AND CIRCUIT COMPRISING SAID DEVICE
US4847839A (en) * 1987-08-26 1989-07-11 Honeywell Inc. Digital registers with serial accessed mode control bit
US5321705A (en) * 1990-11-21 1994-06-14 Motorola, Inc. Error detection system
US5258985A (en) * 1991-11-12 1993-11-02 Motorola, Inc. Combinational data generator and analyzer for built-in self test
US20020194565A1 (en) * 2001-06-18 2002-12-19 Karim Arabi Simultaneous built-in self-testing of multiple identical blocks of integrated circuitry

Also Published As

Publication number Publication date
DE10351442A1 (en) 2004-07-01
CN1729402A (en) 2006-02-01
CN100492042C (en) 2009-05-27

Similar Documents

Publication Publication Date Title
DE102013215055B4 (en) Circuit arrangement, device, method and computer program with modified error syndrome for error detection of permanent errors in memories
DE2357233C2 (en) Address converter
DE3787900T2 (en) Method and device for generating test bytes for error detection for a data block.
DE102011085602A1 (en) Apparatus and method for correcting at least one bit error in a coded bit sequence
DE2256135B2 (en) Method and arrangement for testing monolithically integrated semiconductor circuits
EP0400179B1 (en) Semi-conductor memory internal parallel test method and apparatus
EP0003480B1 (en) Circuit for converting binary information by means of check bits
DE102010029345A1 (en) Method for detecting error of flash analog-to-digital converter of electronic circuit, involves determining parities for output data bits of digital output signal, and detecting error in converter when both parities are identical
DE102020110787B3 (en) CIRCUIT AND PROCEDURE FOR ENCODING OR DECODING A DATA WORD
DE102016104012A1 (en) Processing a data word
DE102015102363A1 (en) ARRANGEMENT AND METHOD FOR CHECKING THE ENTROPY OF A QUOTA NUMBER
EP1579230B1 (en) Device and method for creating a signature
DE102013220749A1 (en) Position measuring system
DE2235802C2 (en) Method and device for testing non-linear circuits
DE10351475A1 (en) Front page inconsistent with disclosure, abstract based on front page. Patent office notified. - Letter box
DE10351442A9 (en) Apparatus and method for forming a signature
DE102005046588B4 (en) Apparatus and method for testing and diagnosing digital circuits
DE3786748T2 (en) Programmable logical arrangement.
EP1676141B1 (en) Evaluation circuit for detecting and/or locating faulty data words in a data stream
DE102011080659B4 (en) DEVICE AND METHOD FOR TESTING A CIRCUIT TO BE TESTED
DE10261810B4 (en) Error detection method for cryptographic transformation of binary data and circuit arrangement
DE102015121646A1 (en) ERROR CORRECTION
EP0046963B1 (en) Circuit configuration for the recognition and correction of error bursts
DE102024203549A1 (en) Error processing
DE10309255B4 (en) Methods and circuits for detecting unidirectional errors

Legal Events

Date Code Title Description
8197 Reprint of an erroneous patent document
8141 Disposal/no request for examination