DE2806836A1 - DIGITAL GENERATOR FOR PSEUDOMERSENNE TRANSFORMATION - Google Patents

DIGITAL GENERATOR FOR PSEUDOMERSENNE TRANSFORMATION

Info

Publication number
DE2806836A1
DE2806836A1 DE19782806836 DE2806836A DE2806836A1 DE 2806836 A1 DE2806836 A1 DE 2806836A1 DE 19782806836 DE19782806836 DE 19782806836 DE 2806836 A DE2806836 A DE 2806836A DE 2806836 A1 DE2806836 A1 DE 2806836A1
Authority
DE
Germany
Prior art keywords
expressions
circuit
circuits
output
generator
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
DE19782806836
Other languages
German (de)
Inventor
Henri Nussbaumer
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2806836A1 publication Critical patent/DE2806836A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/144Prime factor Fourier transforms, e.g. Winograd transforms, number theoretic transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • G06F17/156Correlation function computation including computation of convolution operations using a domain transform, e.g. Fourier transform, polynomial transform, number theoretic transform

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Discrete Mathematics (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Anmelderin: ' International Business MachinesApplicant: 'International Business Machines

Corporation, Armonk, N.Y. 10504Corporation, Armonk, N.Y. 10504

heb-pi Digitaler Generator für Pseudo-Mersenne-Transformationheb-pi digital generator for pseudo-Mersenne transformation

Die Erfindung betrifft einen neuartigen digitalen Generator für die Durchführung von Pseudo-Mersenne-Transformationen. Bis vor kurzem war die Entwicklung von Anwendungsgebieten digitaler Verfahren bei der Verarbeitung von Signalen durch technische und wirtschaftliche Probleme eingeengt· Insbesondere war die Entwicklung von EchtZeitanwendungen relativ langsam, wegen der dabei erforderlichen Rechnerleistung und als Folge davon, wegen der Größe und Kosten der dabei zu verwendenden Datenverarbeitungssysteme. Die digitale Verarbeitung von Signalen kann dabei in eine große Anzahl elementarer Operationen, wie z.B. Modulation, Gleichrichtung, Filtern, Korrelation usw., unterteilt werden. Unter diesen sind die Korrelation und die Filterung, d.h. Faltungsoperationen, eine Klasse für sich, da die zugehörigen Berechnungen im allgemeinen viel umfangreicher sind, als die bei den anderen Operationen erforderlichen Rechnungen. Es ist keineswegs ungewöhnlich, daß über 80% der bei digitaler Signalverarbeitung anfallenden Berechnungen auf Faltungsoperationen und Korrelationsoperationen entfallen.The invention relates to a novel digital generator for performing pseudo-Mersenne transformations. Until recently, the development of areas of application of digital methods in the processing of signals was through technical and economic problems narrowed · In particular, the development of real-time applications was relative slowly, because of the computing power required and, as a result, because of the size and cost of those to be used Data processing systems. The digital processing of signals can be in a large number of elementary Operations such as modulation, rectification, filtering, correlation, etc., can be divided. Among these are the Correlation and filtering, i.e. convolution operations, are in a class of their own because the associated calculations are in general are much more extensive than the calculations required for the other operations. It is by no means unusual that over 80% of the calculations that occur in digital signal processing are based on convolution operations and correlation operations omitted.

Die besondere Wichtigkeit von Faltungsoperationen und Korrelationsoperationen ist auf die Tatsache zurückzuführen, daß im Gegensatz zu den anderen Signalverarbeitungsoperationen jedes Ausgangssignal von einer großen Anzahl von Eingangssignalen abhängt. The particular importance of convolution operations and correlation operations is due to the fact that, unlike the other signal processing operations each output signal depends on a large number of input signals.

FR 976 017 FR 976 017

809838/059*809838/059 *

Die mit einer diskreten Folge {xn> von Abtastwerten eines Eingangssignals x(t) verbundene Filteroperation mit einem Filter, dessen Impulsverhalten durch eine diskrete Folge a £} definiert ist, kann durch die FaltungsoperationThe filter operation associated with a discrete sequence {x n > of samples of an input signal x (t) with a filter whose impulse behavior is defined by a discrete sequence a £ } can be performed by the convolution operation

dargestellt werden. In gleicher Weise ist die Korrlation zwischen den Folgen {x„} und {ae} gegeben durchbeing represented. In the same way, the correlation between the sequences {x „} and {a e } is given by

N-1N-1

Man sieht also, daß für einen einzigen Abtastwert ζ des Ausgangssignals N Multiplikationen und N-1 Additionen durchgeführt werden müssen.It can therefore be seen that for a single sample ζ des Output signal N multiplications and N-1 additions must be carried out.

Es ist demgemäß außerordentlich wichtig, daß für eine Ausdehnung der Anwendungsmöglichkeit digitaler Signalverarbeitungsverfahren die Wirkungsweise der zur Durchführung von Faltungsoperationen und Korrelationsoperationen dienenden Schaltungen verbessert wird.Accordingly, it is extremely important that, in order to expand the application of digital signal processing techniques the mode of action of those used to carry out convolution operations and correlation operations Circuits is improved.

Es sei darauf hingewiesen, daß zwar im allgemeinen den für Faltungsoperationen verwendeten Schaltungen ein größeres Interesse galt als den Korrelatoren, da Faltungsoperationen in digitalen Filtern unmittelbar eingesetzt werden können, so sind doch die in Verbindung damit entwickelten Verfahren auch auf Korrelationsfunktionen und Multiplizierschaltungen für lange Polynome, d.h. für lange ganze rationale Funktionen anwendebar.It should be noted that while in general the circuits used for convolution operations have a larger Interest was seen as the correlators, since convolution operations in digital filters can be used directly, so the methods developed in connection with it are also based on correlation functions and multiplier circuits for long polynomials, i.e. can be used for long whole rational functions.

Einige der wirkungsvolleren Schaltungen zur Durchführung von Faltungsoperationen machen von diskreten mathematischen Trans* formationen Gebrauch, bei denen eine Faltung eine RolleSome of the more powerful circuits for performing convolution operations make use of discrete mathematical trans * use of formations in which a convolution plays a role

i"R 976 ο17i "R 976 ο17

809838/0594809838/0594

spielt. Durch solche Transformationen kann die Anzahl der in den Multiplizierschaltungen durchgeführten Operationen bei Anwendung von Faltungsoperationen beträchtlich verrin-plays. Such transformations can reduce the number of operations performed in the multiplier circuits when using folding operations considerably

2
gert werden, da die N Multiplikationen zur Ableitung von N Abtastwerten, wie z.B. Z1n,auf N Multiplikationen verringert werden. Werden die Folgen {a0} und {x}diskreten Trans-
2
because the N multiplications for deriving N samples, such as Z 1n , are reduced to N multiplications. If the sequences {a 0 } and {x} discrete trans-

x* ηx * η

formationsgeneratoren der oben genannten Art zugeführt, so erhält man die Folgen {A,} und {X.} (wobei k=0, 1, ..., N-1) ist), so daß die inverse Transformation der Folge von {Ck}'s, die sich aus den Ausdruck für Ausdruck ermittelten Produkten {A. . X, } ergibt, die Faltung der ursprünglichen Folgensupplied to formation generators of the type mentioned above, one obtains the sequences {A,} and {X.} (where k = 0, 1, ..., N-1)), so that the inverse transformation of the sequence of {C k } 's, which result from the expression for expression determined products {A. . X,} gives the convolution of the original sequences

Js. · JvJs. · Jv

j{a,} und {x } liefert. Die Wirksamkeit von Schaltungen dieser IArt, die nach diesem Prinzip arbeiten, hängt von der Wirkjsamkeit der Generatoren für die direkten und Inversen Trans- !formationen ab. Es wäre daher erwünscht, Transformations-Igeneratoren zu schaffen, die für eine vorgegebene Präzision jder Definition der Werte A, ein Minimum an Schaltmitteln !erfordern.j yields {a,} and {x}. The effectiveness of circuits of this I kind, which work according to this principle, depends on the effectiveness of the generators for the direct and inverse transformations. It would therefore be desirable to use transformation generators to create a minimum of switching means for a given precision of the definition of the values A !require.

Bis vor kurzem war die einzige diskrete Transformation, die tatsächlich in einer für eine Faltungsoperation geeigneten Schaltung eingesetzt wurde, die diskrete Fouriertransformation, die wie folgt definiert ist:Until recently, the only discrete transformation that actually turned into one suitable for a convolution operation was Circuit was used, the discrete Fourier transform, which is defined as follows:

N-1N-1

A. = J a .
n=o
A. = Yes.
n = o

für k » 0, 1, ..., N-1for k »0, 1, ..., N-1


und W β e ^

and W β e ^

Diese Tranformation ist besonders schwierig bei Schaltungen einzusetzen, die binär codierte Abtastwerte benutzt, so daß es im allgemeinen vorgezogen wird, Mersenne- oder Fermat-Transformationen zu benutzten, wo dann W eine Potenz von 2This transformation is particularly difficult to use in circuits that use binary coded samples, so that it is generally preferred to use Mersenne or Fermat transformations where W is a power of 2

809838/059*809838/059 *

ist, was offensichtlich bei der Verarbeitung von binären Worten von Vorteil ist.is what is obviously beneficial when processing binary words.

Diese letztgenannten Transformationen erforden jedoch besondere Schaltungen, da die dabei durchzuführenden mathematischen Operationen mit modulo N durchgeführt werden müssen, wobei N eine vorgegebene Zahl ist.However, these latter transformations require special ones Circuits, since the mathematical operations to be carried out must be carried out with modulo N, where N is a predetermined number.

Zum leichteren Verständnis dieser Ausführungen sei auf das Buch "Digital Processing of Signals" von Gold und Rader, veröffentlicht 1969, bei McGraw-Hill (vergleiche insbesondere Kapitel 7) und auf einen Aufsatz mit dem Titel "Discrete Convolutions via Mersenne Transforms" von Rader in IEEE Transactions on Computers, Band C-21, Nr. 12, Dezember 1972, Seiten 1269 bis 1273 hingewiesen.For an easier understanding of these statements, the book "Digital Processing of Signals" by Gold and Rader is published 1969, from McGraw-Hill (see especially Chapter 7) and to an essay entitled "Discrete Convolutions via Mersenne Transforms "by Rader in IEEE Transactions on Computers, Volume C-21, No. 12, December 1972, Pages 1269 to 1273 pointed out.

Die Mersenne-Transformation folgt der BeziehungThe Mersenne transform follows the relationship

Die hier benutzten Klammersymbole <<>> und (()) bedeuten, daß die in Klammern gesetzten Größen modulo q- bzw. modulo ρ ■»■ 2*^1-1 zu nehmen sind, wobei q.. eine Primzahl und ρ - 2qi-1 eine ganze Zahl ist. Die praktische Anwendung dieser Transformation wird jedoch durch die Tatsache eingeschränkt, daß zwischen p, der Anzahl der Ausrücke aR, auf die die Transformation angewendet wird, und der Präzision oder Länge der Worte A. eine enge Beziehung besteht. Für eine Transformation mit q., Ausdrücken bestehen die Worte A, ausThe brackets <<>> and (()) used here mean that the quantities in brackets are modulo q- or modulo ρ ■ »■ 2 * ^ 1-1, where q .. is a prime number and ρ - 2 qi -1 is an integer. However, the practical application of this transformation is limited by the fact that there is a close relationship between p, the number of terms a R to which the transformation is applied, and the precision or length of the words A. For a transformation with q., Expressions the words A, consist of

ι λι λ

q1 Bit. Dies erfordert, daß die eingangsseitig zugeführten Worte a aus weniger alsq 1 bit. This requires that the words supplied on the input side consist of less than

77 7 7

.809838/0594.809838 / 0594

Bit bestehen, wobei jedoch jede der Schaltungen des Transforraationsgenerators eine Kapazität von q- Bit haben muß. Dies ist offensichtlich für die Wirksamkeit der Schaltung von Nachteil.Bits exist, but each of the circuits of the transformation generator must have a capacity of q-bit. This is evident for the effectiveness of the circuit disadvantageous.

Für manche Anwendungsgebiete kann es ferner vorteilhaft sein, die Worte an bitweise serial zu verarbeiten. In einem solchen Fall wären die Schaltungen für einen Mersenne-Transformationsgenerator noch schwieriger und komplizierter aufgebaut als bei einer entsprechenden Parallelverarbeitung von Daten.For some areas of application it can also be advantageous to process the words a n bit-by-bit serial. In such a case, the circuits for a Mersenne transform generator would be even more difficult and complicated to design than with a corresponding parallel processing of data.

Aufgabe der Erfindung ist es also, einen diskreten Transformationsgenerator zu schaffen, der in einem Faltungsgenerator einsetzbar ist und der insbesondere zur Erzeugung von Mersenne· Transformationen einsetzbar ist und dabei weniger komplexe Schaltungen benötigt als bisher.The object of the invention is therefore to provide a discrete transformation generator to create, which can be used in a convolution generator and which is particularly useful for generating Mersenne Transformations can be used and requires less complex circuits than before.

Insbesondere soll durch die Erfindung ein Generator für Pseudo-Mersenne-Transformationen geschaffen werden, der Rechenschaltungen benutzen kann, die nur die Hälfte der Kapazität benötigen, die bei bisher bekannten Schaltungen dieser Art erforderlich war. Die Erfindung wird nunmehr anhand eines bevorzugten Ausführungsbeispiels in Verbindung mit den beigefügten Zeichnungen im einzelnen beschrieben.In particular, a generator for Pseudo-Mersenne transformations are created of the computing circuits can use that require only half the capacity that in previously known circuits of this Kind was required. The invention is now based on a preferred embodiment in connection with described in detail in the accompanying drawings.

In den Zeichnungen zeigt«In the drawings «

Fig. 1 schematisch ein Blockschaltbild der Erfindung,1 schematically shows a block diagram of the invention,

Fig. 2 ein Blockschaltbild einer tatsächlich ausgeführten, gemäß der Erfindung aufgebauten Schaltung,Fig. 2 is a block diagram of an actually implemented one constructed in accordance with the invention Circuit,

FRT 976 017FRT 976 017

609638/0584609638/0584

- 11 Fig. 3 eine bei der Erfindung verwendbare Schaltung,11 Fig. 3 shows a circuit that can be used in the invention,

Fig. 4 eine Ausführungsform einer Schaltung für die Durchführung von Faltungsoperationen gemäß der Erfindung undFIG. 4 shows an embodiment of a circuit for performing convolution operations according to FIG of the invention and

Fig. 5 eine Ausführungsform einer für Faltungsoperationen brauchbaren Schaltung gemäß der Erfindung. 5 shows an embodiment of a circuit according to the invention useful for convolution operations.

Es ist bekannt, daß es für diskrete Transformationen des Mersenne-Typs für die Eigenschaft, eine ringförmige Faltung zu liefern und demgemäß in Faltungsschaltungen einsetzbar zu sein, nicht erforderlich ist, daß q. einer Primzahl ist. Insbesondere kann man q1 = 2q wählen, wobei q eine Primzahl ist, um damit eine Pseudo-Mersenne-Transformation zu definieren, so daßIt is known that for discrete transformations of the Mersenne type, for the property of providing an annular convolution and accordingly being usable in convolution circuits, it is not necessary that q. is a prime number. In particular one can choose q 1 = 2q, where q is a prime number, in order to define a pseudo-Mersenne transformation so that

<4> K - (( Γ an . 2<^^> )) wird. Vy n=o< 4 > K - (( Γ a n . 2 <^^>)) becomes. Vy n = o

Das Faltungsprodukt wird dann, wie bei der üblichen Mersenne-Transformation, in der Weise berechnet, daß alle Operationen modulo (2^-1) durchgeführt werden, mit Ausnahme der letztenThe convolution product is then, as in the usual Mersenne transformation, calculated in such a way that all operations are performed modulo (2 ^ -1), with the exception of the last one

Operation, die 22^-1Operation, the 2 2 ^ -1

modulo ( ) durchgeführt wird.modulo () is performed.

Ist der ausgewählte Wert von q eine ungerade Primzahl, wie z.BIf the selected value of q is an odd prime number, such as

dann können die Werte A^ dadurch erzeugt werden, daß ein Generator für Mersenne-Transformationen A. und ein Generator für Pseudo-Fermat-Transformationen A. benutzt und die jeweiligen Auegangssignale miteinander kombiniert werden.then the values A ^ can be generated by adding a Generator for Mersenne transformations A. and a generator for pseudo-Fermat transformations A. used and the respective Output signals can be combined with one another.

FR 976 017FR 976 017

80983(8/059480983 (8/0594

- 12 -- 12 -

modulo q ] (5)modulo q] (5)

/modulo (2q-iA ,/ modulo (2 q -iA,

' J modulo 2 ■' J modulo 2 ■

a β (_2j<nk> modulo 1 j \ i6* a β ( _ 2 j <nk> modulo 1 j \ i6 *

n»o n * /modulo (2q+1))n »o n * / modulo (2 q +1))

/ /modulo 2 ■ / / modulo 2 ■

Es kann gezeigt werden, daß für jeden Wert von k die Aus-It can be shown that for every value of k the result

1 21 2

drücke A, und A. die gleichen Ausdrücke a enthalten, die mitpress A, and A. contain the same expressions a that begin with

Λ* λ HΛ * λ H

den gleichen Potenzen von 2 multipliziert sind. In der Glei-are multiplied by the same powers of 2. In the same

2
chung für A, haben jedoch die einer ungeradzahligen Potenz Ivon 2 zugeordneten Ausdrücke a ein Minuszeichen.
2
for A, however, the expressions a assigned to an odd power I of 2 have a minus sign.

! (7) ΒΛ - i! (7) ΒΛ - i

n=on = o

n=on = o

an f2 <nk> - (-2)<nk>]a n f 2 <nk> - (-2) <nk> ]

k = Bk + Bk1 Und ^ = Bk-Bkk = Bk + Bk 1 and ^ = B k- B k

Daraus erhält man A, B, +B, undFrom this we get A, - B, + B, and

Demgemäß kann der Generator für Pseudo-Mersenne-Transformation gemäß der Erfindung aufgebaut werden wie in Fig. 1. Die Abtastwerte a werden gleichzeitig den Schaltungen CompAccordingly, the pseudo-Mersenne transform generator according to the invention are constructed as in Fig. 1. The Samples a are simultaneously the circuits Comp

1 91 9

B/ und Comp Br zur Durchführung und Gewichtung zugeleitet werden, die die Operationen gemäß Gleichung (7) und (8) durchführen. Die Schaltungen können aus gewöhnlichen arithmetischen Schaltkreisen aufgebaut werden, die den Modulus nicht zu berücksichtigen brauchen. Die Erfindung ergibt daher den doppelten Vorteil, daß sie die Verwendung einfacher und auch leicht verfügbarer Schaltkreise gestattet.B / and Comp Br forwarded for implementation and weighting that perform the operations according to equations (7) and (8). The circuits can be made from ordinary arithmetic circuits can be built that do not need to take the modulus into account. The invention therefore provides the dual advantage that it allows the use of simple and also readily available circuitry.

FR aVb 017FR aVb 017

809838/0594809838/0594

1 2
Die Ansgangssignale B. und B, werden dann in der Addierstufe AD1 modulo 2q-1 zueinander addiert und in der Addierstufe AD2 modulo 2g+1 voneinander subtrahiert und liefern damit
1 2
The initial signals B. and B are then added to one another in the adder stage AD1 modulo 2 q -1 and subtracted from one another in the adder stage AD2 modulo 2 g +1 and thus provide

1 2
A^ und Aj5. Diese Ausdrücke werden am Eingang einer mit RES bezeichneten Schaltung zugeführt, die die gewichteten Additionen durchführt, die für Zwecke der sogenannten Residuum-Operation erforderlich sind:
1 2
A ^ and Aj 5 . These expressions are fed to the input of a circuit labeled RES, which carries out the weighted additions required for the purpose of the so-called residual operation:

*k * U XAk + uAk Jj modulo (22q-1) * k * U XA k + uA k Jj modulo (2 2q -1)

wobei λ «= (2q+1) 3 where λ «= (2 q +1) 3

((2q+1)) modulo (2q-1) ((2q + 1)) modulo (2 q -1)

μ - (2q-1) t- μ - (2 q -1) t-

((2 -1)) modulo (2q+1)((2 -1)) modulo (2 q +1)

Die bisjetzt erreichte Verringerung der für einen Generator für die Transformation A. erforderliche Rechenleistung ist nicht besonders groß. Es wird jedoch zu zeigen sein, wie sich daraus eine besonders interessante Schaltung ableiten läßt.The reduction in energy that has been achieved so far for a generator the computing power required for the transformation A. is not particularly great. However, it will have to be shown how a particularly interesting circuit can be derived from it.

Wenn g eine primitive Wurzel von q darstellt, dann nimmt bekanntlich, wenn 1 nacheinander alle ganzzahligen Werte von 1 bis q-1 annimmt, <g > modulo q die gleichen Werte, jedoch in einer anderen Reihenfolge an. Die Reihenfolge der Glieder der Folge <g > soll dabei zu den primitiven Wurzeln in Beziehung stehen. Man erhält beispielsweise für q-7 und g=3If g is a primitive root of q, then it is well known that if 1 takes on all integer values from 1 to q-1 one after the other, <g> modulo q the same values, but in a different order. The order of Members of the sequence <g> are supposed to be related to the primitive roots. For example, one obtains for q-7 and g = 3

12 3 4 5 612 3 4 5 6

3 2 6 4 5 1 809838/059* 3 2 6 4 5 1 809838/059 *

Setzt manIf you set

<gv>
<gu>
<g v >
<g u >

und η ·and η

dann wird, wenn u und ν sich nach der Reihenfolge 1, 2, 3, 4, 5, 6 ändern, die Reihenfolge, in der sich <gv> und <gu> ändern, nämlich 3, 2, 6, 4, 5, 1 zu den primitiven Wurzeln in Beziehung zu setzen sein.then, if u and ν change according to the order 1, 2, 3, 4, 5, 6, the order in which <g v > and <g u > change, namely 3, 2, 6, 4, 5, 1 to be related to the primitive roots.

1 21 2

Man findet, daß sich A - a und AOne finds that A - a and A

<gv>
kulation der Ausdrücke a u in einem Transversalfilter ergeben, dessen Koeffizienten Potenzen von 2 sind, deren Exponenten alle ganzzahlige Wert«
sich bestimmt werden.
<g v >
culation of the expressions a u in a transversal filter whose coefficients are powers of 2, whose exponents are all integer values «
be determined.

- a aus einer Ziro - a from a Ziro

alle ganzzahlige Werte von 1 bis q-1 annehmen. Nur A muß fürall assume integer values from 1 to q-1. Only A must for

In Fig. 2 ist ein Transformationsgenerator als Ausführungsbeispiel gezeigt, bei dem q=7 und g—3 ist. Die Ausdrücke In FIG. 2, a transformation generator is shown as an exemplary embodiment, in which q = 7 and g-3. The expressions

1 21 2

Α/ und A. folgen für k 4 O den folgenden Beziehungen»Α / and A. follow for k 4 O the following relations »

FR 376 017FR 376 017

809838/0594809838/0594

4 - % " a3 2' + a2 20 + a6 24 + a4 2' + - a5 2 + al 2'4 -% " a 3 2 ' + a 2 20 + a 6 24 + a 4 2 ' + - a 5 2 + a l 2 '

4 - ao = al4 - a o = a l

ao - a5 a o - a 5

AJ -AJ -

A2 - ao A 2 - a o

- ao = a4 a4 2 + a5 - a o = a 4 a 4 2 + a 5

25 + a, 22 5 + a, 2

a4 26 + a5 24 + a, 25 a 4 2 6 + a 5 2 4 + a, 2 5

25 + a, 2 + a, 23 2 5 + a, 2 + a, 2 3

a4 2' - a5 2 - al 2' a 4 2 '- a 5 2 - a l 2 '

a625 - a42 - 3S2' a 6 25 - a 4 2 - 3 S 2 '

>5 - a62 - a423 > 5 - a 6 2 - a 4 2 3

- a62"- a 6 2 "

a5 24 - &1 25 - a3 2 - a2 23 a 5 2 4 - & 1 2 5 - a 3 2 - a 2 2 3

- a5 25 - aj 2 - a323 - a 5 2 5 - aj 2 - a 3 2 3

FR 976FR 976

809838/0594809838/0594

Die Ausrücke a1 bis ag werden dem Schieberegister SRO zugeführt, von dem sie in einer zu den Primitivwurzeln in Beziehung stehenden Reihenfolge nach einem weiteren Schieberegister SR1O übertragen werden, dessen Ausgang über eine Rückkopplungsverbindung mit dem Eingang verbunden ist. Das Schieberegister SR1O ist mit Anzapfungen versehen, die mit einer Gruppe von Multiplizierstufen verbunden sind, die die an den Anzapfungen auftretenden Ausdrücke mit den Koeffizienten 2,2,2,2,2 und 2 bewertet. Die Ausgangssignale dieser Multiplizierstufen, die die von den Anzapfungen kommenden Ausdrücke mit geradzahligen Potenzen von 2 bewerten, werden in einer Summenschaltung J1, die einen weiteren Eingang für a aufweist, zueinander addiert. Die Ausgangssignale der anderen Multiplizierstufen werden in £2 aufaddiert. Demgemäß liefern £l bzw. ]?2 die AusdrückeThe Ausrücke A 1 to A g are supplied to the shift register SRO, from which they are transferred in a standing to the primitive roots in relationship sequence according to a further shift register SR 1 O whose output is connected via a feedback connection with the input. The shift register SR 1 O is provided with taps which are connected to a group of multipliers, which evaluates the expressions appearing at the taps with coefficients 2,2,2,2,2 and 2. FIG. The output signals of these multiplier stages, which evaluate the expressions coming from the taps with an even-numbered power of 2, are added to one another in a summation circuit J1, which has a further input for a. The output signals of the other multiplier stages are added up in £ 2. Accordingly, £ 1 and]? 2 yield the expressions

B1 und B2 ,
<g > <g >
B 1 and B 2 ,
<g><g>

Die Schaltung enthält dann noch die beiden Addierstufen AD1, AD2 und die Residuumstufe RES gemäß Fig. 1, die dann die Ausdrücke AThe circuit then also contains the two adder stages AD1, AD2 and the residual level RES according to FIG. 1, which then use the expressions A

<g><g>

liefert, d.h. die Transformationen A, für k=3, 2, 6, 4, 5, 1.Um das gewünschte Ergebnis zu erhalten, ist es jetzt lediglich noch erforderlich, diese Transformationen in ihrer richtigen Reihenfolge zu ordnen und dann noch AQ hinzuzufügen, das unabhängig bestimmt worden ist.delivers, ie the transformations A, for k = 3, 2, 6, 4, 5, 1. To get the desired result, it is now only necessary to arrange these transformations in their correct order and then to add A Q that has been independently determined.

Diese Schaltung ist besonders brauchbar, wenn man Worte serial bitweise verarbeitet. Zu diesem Zweck werden die eine Gewichtung durchführenden Schaltungen durch Akkumulatoren ersetzt, die jeweils aus einer Addierstufe und einem Register bestehen. Wie Fig. 3 zeigt, kann tatsächlich·eine einzige Addierstufe ADD1 benutzt werden, wobei diese AddierstufeThis circuit is particularly useful when processing words bit by bit serial. For this purpose a weighting is used implementing circuits are replaced by accumulators, each consisting of an adder and a register exist. As shown in FIG. 3, a single Adding stage ADD1 can be used, this adding stage

FR y/b 01VFR y / b 01V

809838/0594809838/0594

durch eine Gruppe von Schaltern SW2 mit zwei Positionen zurby a group of switches SW2 with two positions for

1 2
Ableitung der Ausdrücke B, und B, vielfach ausgenutzt wird.
1 2
Derivation of the expressions B, and B, is widely used.

Die in Fig. 3 dargestellte Schaltung gestattet auch die gleichzeitige Verarbeitung zweier aufeinanderfolgender Bits der in SR1 eingespeicherten Ausdrücke.The circuit shown in Fig. 3 also allows the simultaneous processing of two successive bits of the expressions stored in SR1.

Der Eingang IN ist an einer der Kontaktklemmen eines Umschalters SW1 angeschlossen. Der Schaltarm des Schalters SW1 liegt am Eingang eines Schieberegisters SR1, dessen Ausgang mit dem zweiten Schaltkonktakt von SW1 verbunden ist. Das Register SR1 ist außerdem mit Anzapfungen versehen, die mit einer Gruppe von Umschaltern SW2 verbunden sind, deren Reihenfolge noch dargelegt wird. Die Schaltarme der Schalter SW2 sind mit den Eingängen einer binären Addierstufe ADD1 für q Bit ver-f bunden. Die Ausgänge der Addierstufe ADD1 sind mit einem Register R1 mit 2q Bitpositionen verbunden, deren Ausgänge wiederum an einem Register R2 angeschlossen sind, das die gleiche Kapazität besitzt wie R1. Ausgangsseitig ist R2 mit einem der Eingänge eines Schalters SW3 verbunden. Als Eingang des Transformationsgenerators sind ein Schalter SW4 und eine modulo 2 q-1-Addierstufe ADD2 vorgesehen. Der Schalter SW4 ist an einem Schieberegister SR3 angeschlossen, dessen Kapazität ein Wort beträgt. Die parallelen Ausgänge der Bitpositionen von R3 sind an einem Eingang des Schalter SW3 angeschlossen. Der Schalter SW3 hat zwei parallele Ausgänge, die mit der Addierstufe ADD1 bzw. dem Register R1 verbunden sind. Ausgangsseitig ist die Addierstufe ADD2 am Eingang eines Schieberegisters R4 angeschlossen, dessen seriales Ausgangssignal dem zweiten Eingang der Addierstufe ADD2 zugeführt wird. Am Ausgang von R2 treten die Ausdrücke Bfc und Bk auf, während der Ausdruck AQ am Ausgang des Akkumulators (ADD2, R4) auftritt.The input IN is connected to one of the contact terminals of a switch SW1. The switching arm of the switch SW1 is at the input of a shift register SR1, the output of which is connected to the second switching contact of SW1. The register SR1 is also provided with taps which are connected to a group of changeover switches SW2, the order of which will be explained below. The switching arms of the switches SW2 are connected to the inputs of a binary adding stage ADD1 for q bits. The outputs of the adder stage ADD1 are connected to a register R1 with 2q bit positions, the outputs of which are in turn connected to a register R2, which has the same capacity as R1. On the output side, R2 is connected to one of the inputs of a switch SW3. A switch SW4 and a modulo 2 q-1 adder ADD2 are provided as the input of the transformation generator. The switch SW4 is connected to a shift register SR3, the capacity of which is one word. The parallel outputs of the bit positions of R3 are connected to one input of switch SW3. The switch SW3 has two parallel outputs which are connected to the adder ADD1 and to the register R1. On the output side, the adder stage ADD2 is connected to the input of a shift register R4, the serial output signal of which is fed to the second input of the adder stage ADD2. The expressions B fc and B k occur at the output of R2, while the expression A Q occurs at the output of the accumulator (ADD2, R4).

809838/0594809838/0594

Die Äbtastwerte ä , die, so wird angenommen, in der Reihen-The sampling values ä, which, it is assumed, in the series

ι folge a , a-,ι follow a, a-,

ag, sl^i a, geordnet sind, werdenag, sl ^ i a, are ordered, become

j serial und bitweise dem Eingang IN zugeführt, beginnend mit der geringsten Wertigkeit. Der Ausdruck a wird über Schalter SW1 und SW4 nach dem Register R3 umgeleitet und läuft nicht in das Schieberegister SR1 ein. über den Schalter SW1 laufen die q-1 Abtastwerte im Register SR1 um. Wie bereits erwähnt, müssen diese Abtastwerte mit den zuvor definierten Potenzen von 2, deren Exponenten alle ganzzahligen Werte vonj serial and bit-wise fed to the input IN, starting with the lowest value. The expression a becomes over Switches SW1 and SW4 are diverted to register R3 and do not enter shift register SR1. via switch SW1 the q-1 samples circulate in the register SR1. As already mentioned, these samples must match the previously defined Powers of 2 whose exponents are all integer values of

!1 bis q-1 annehmen können, multipliziert werden. In dem oben angeführten Beispiel gehen diese Exponenten von 1 bis 6. Die Exponenten von 2 sind in der gleichen Reihenfolge angeordnet, wie in Fig. 2, nämlich 22, 26, 24, 25, 2, 23. Die zur Erzeugung der Ausdrücke (A. - a ) erforderlichen Gewichtungen und Akkumulationsoperationen können in der Weise durchgeführt werden, daß die Bits mit identischer Gewichtung, die sich auf die in SR1 befindlichen Worte beziehen, nach den entsprechenden Eingängen von ADD1 ausgegeben werden. Es soll-! 1 to q-1 can be multiplied. In the example above, these exponents range from 1 to 6. The exponents of 2 are arranged in the same order as in Fig. 2, namely 2 2 , 2 6 , 2 4 , 2 5 , 2, 2 3 . The weightings and accumulation operations required to generate the expressions (A.-a) can be carried out in such a way that the bits with identical weighting, which relate to the words in SR1, are output after the corresponding inputs of ADD1. It should-

ten jedoch in bezug auf die Ausdrücke (A, - a ) die Subtraktionen berücksichtigt werden. Dies kann auf verschiedene Weise durchgeführt werden. In diesem Fall werden die Aus-however, with respect to the expressions (A, - a), the subtractions must be taken into account. This can be done in a number of ways. In this case, the

1 2
drücke BJ und B. sequentiell entwickelt, woraus sich die Forderung nach der Gruppe von zweipoligen Umschaltern SW2
1 2
press BJ and B. developed sequentially, from which the requirement for the group of two-pole changeover switches SW2

1 21 2

ergibt, die: zur Entwicklung der Ausdrücke B. und B^ verwendet werden. Demgemäß wird der Addierer ADD1 normalerweise zu jeder Zeit jeweils nur oder höchstens S£- Bit verarbeiten, SW1 wird aus %ψ~ Schaltern bestehen, und die Register R1 und R2 werden jeweils q Bitpositionen aufweisen. Der Addierer ADD1, Register R1, R2, die Schalter SW3, SW4 und das Register R3 stellen dabei insgesamt einen Serienparallelakkumulator dar. Die in Fig. 3 dargestellte Schaltung ist dabei so ausgelegt, daß sie ein beschleunigtes Verfahren ermöglicht, bei dem aufeinanderfolgende Bitpaare, die sich auf die in SR1 befindlichenwhich: are used to develop the terms B. and B ^. Accordingly, the adder ADD1 will normally only process or at most S £ bits at any one time, SW1 will consist of % ψ switches, and the registers R1 and R2 will each have q bit positions. The adder ADD1, registers R1, R2, the switches SW3, SW4 and the register R3 represent a total of a series parallel accumulator. The circuit shown in FIG refer to the ones in SR1

FR 976 017FR 976 017

609838/0594609838/0594

Worte beziehen, gleichzeitig behandelt werden können. Dies erklärt, waraum SW2 q-Schalter enthält und warum ADD1 eine Kapazität von q Bitpositionen aufweist, während R1 und R2 jeweils eine Kapazität von 2q Bitpositionen aufweisen.Relate words that can be treated at the same time. This explains why SW2 contains q switches and why ADD1 has a capacity of q bit positions while R1 and R2 respectively have a capacity of 2q bit positions.

Wenn die Schalter SW2 in ihre linke Position umgeschaltet sind, dann nehmen sie Bitpaare auf, die zur Bildung der Ausdrücke B, dienen (linke Hälfte von SR1) und wenn die Schalter SW2 in die rechte Position umgeschaltet sind, dannIf the switches SW2 are toggled to their left position, then they accept bit pairs that are used to form the Expressions B, serve (left half of SR1) and if the Switch SW2 are switched to the right position, then

2 nehmen sie für die Bildung der Ausdrücke B, (rechte Hälfte von SR1) Bitpaare auf, mit Ausnahme des geringstwertigen Bits des äußersten rechten Wortes, weil dieses Bit, wegen des Umlaufes, bereits wieder in SR1 eingefügt worden ist. Die in SR1 liegenden Worte werden zu jedem Taktzeitpunkt um zwei Bitpositionen verschoben, und die Schalter von SW2 werden entsprechend dieser Verschiebungen betätigt. Die am Ausgang von SW2 auftretenden Bits werden unter Berücksichtigung ihrer Bewertung oder Gewichtung an ADD1 übertragen, zusammen mit den Bits des im Register R2 eingespeicherten Wortes (über SW3). Das Resultat wird mit einer Verschiebung um eine Bitposition nach rechts in R1 eingegeben und dann an R2 angelegt. Zuletzt wird der Ausdruck a nach Parallelumwandlung in R2 zum Inhalt des2 use them for the formation of the expressions B, (right half of SR1) bit pairs, with the exception of the least significant bit of the rightmost word, because this bit, because of the circulation, has already been reinserted in SR1. The words in SR1 are shifted by two bit positions at each clock time shifted, and the switches of SW2 are operated in accordance with these shifts. The ones occurring at the output of SW2 Bits are transferred to ADD1 taking into account their weighting or weighting, together with the bits of the Word stored in register R2 (via SW3). The result is a shift by one bit position to the right entered in R1 and then applied to R2. Finally, the expression a becomes the content of the after parallel conversion in R2

° 12° 12

Addierers ADD1 hinzuaddiert. Somit werden B. und B. nacheinander abgeleitet und gestatten die Entwicklung von A^ (fürAdders ADD1 added. Thus B. and B. are derived one after the other, allowing the development of A ^ (for

k j* O) in einer Anordnung, die aus AD1, AD2, RES besteht, ähnlich der in Fign. 1 und 2, jedoch nicht in Fig. 3 gezeigten Anordnung.k j * O) in an arrangement consisting of AD1, AD2, RES, similar to that in FIGS. 1 and 2, but not shown in Fig. 3 arrangement.

Wie jedoch bereits früher erwähnt, ist der Transformationsgenerator gemäß der Erfindung hauptsächlich dafür bestimmt, in einer Schaltungsanordnung zur Durchführung einer Faltungsoperation eingesetzt zu werden. Demgemäß werden darin die Ausdruck für Ausdruck durchgeführten Multiplikationen derHowever, as mentioned earlier, the transformation generator according to the invention is mainly intended for to be used in a circuit arrangement for performing a convolution operation. Accordingly, the Expression for expression performed multiplications of the

FR 976 017 ~FR 976 017 ~

809838/0594809838/0594

Werte A^ durch andere Transformationen X. vorgenommen. Die Ausdrücke X, können gemäß der Erfindung dadurch bestiirmtValues A ^ made by other transformations X. the Expressions X can thereby be determined according to the invention

1212th

werden, daß man zunächst die Ausdrücke X/ und Xf ableitet.that one first derives the expressions X / and Xf.

JC JCJC JC

12 1 212 1 2

Die Wege, denen die Ausdrücke A/, Af, X/ und XT folgen, sollten vorzugsweise voneinander getrennt sein. Es wäre !demgemäß erwünscht, die folgenden OperationenThe paths followed by the expressions A /, Af, X / and XT should preferably be separated from each other. Accordingly, it would be desirable to perform the following operations

' V / modulo 2g-1 K 'V / modulo 2 g -1 K

) I A.2 - X.2 I) I A. 2 - X. 2 I

modulo 2q+1modulo 2 q +1

(10) f ä2 . x? ) σ -c*(10) f ä2. x? ) σ -c *

qq KK

durchzuführen, bevor die Residuumsoperation in der Schaltung iRES (vergleiche Fign· 1 und 2) durchgeführt wird. Eine MuI-Itiplizierschaltung, die mit Vorteil zur Ableitung der Größen C, eingesetzt werden kann, ist in Fig. 4 gezeigt. Es war angenommen worden, daß die Ausdrücke {x } bereits definiertto be carried out before the residual operation is carried out in the circuit iRES (compare FIGS. 1 and 2). A multiplier circuit, which can advantageously be used to derive the quantities C, is shown in FIG. 4. It was accepted been that the expressions {x} have already been defined

1 worden sind, und daß die Ausdrücke X. in Speicher MEM1 ein-1 and that the expressions X. in memory MEM1

1 21 2

gespeichert werden können. Die Worte B, und B, mit jeweils zwei g Bit werden serial Bitweise in einem Addierer ADD3 addiert und liefern das Wort B^ mit (2q+1) Bit.can be saved. The words B, and B, with respectively two g bits are added serial bit by bit in an adder ADD3 and deliver the word B ^ with (2q + 1) bit.

3 33 3

Die Bits hl des Wortes B£ werden sequentiell in das Schieberegister SR2 mit einer Kapazität von g Bit eingebracht. Wenn das Bit bf . 2 am Ausgang des Schieberegisters SR2 zur Verfügung steht, dann niasat der Eingang von SR2 i>i+a. · 2 "^ auf. In einem mit modulo 2^-1 arbeitenden System ist 2^ = 1f so daß die Multiplikation von X^ mit (b^ . 21 + bf . 2i+q) sich reduziert zuThe bits hl of the word B £ are sequentially placed in the shift register SR2 with a capacity of g bits. If the bit bf. 2 is available at the output of the shift register SR2, then the input of SR2 i> i + a niasat. · 2 "^ on. In a system working with modulo 2 ^ -1, 2 ^ = 1 f so that the multiplication of X ^ by (b ^. 2 1 + bf . 2 i + q ) is reduced to

FR 976 017FR 976 017

.Ö09838/059A.Ö09838 / 059A

- 21 !Demgemäß kann die Operation (9) vereinfacht werden.- 21! Accordingly, the operation (9) can be simplified.

Der durch MEM1 gelieferte Ausdruck X, wird in einer durch das Ausgangssignal t.. eines logischen UND-Gliedes A1 gesteuerten Schiebeschaltung SH1 modulo 2g-1 multipliziert, wobei am Eingang des UND-Gliedes A1 die Signale b^ und b. liegen.The expression provided by MEM1 X is, in a by the output signal t .. a logic AND gate A 1 controlled shift circuit SH1 modulo 2 g -1 is multiplied, wherein at the input of the AND gate A1, the signals b ^ and b. lie.

Eine Verschiebung des Inhalts von SH1 findet statt, wenn dieThe content of SH1 is shifted when the

3 3
Bits b. und b.+ beide gleich 1 sind. Ist mindestens eines dieser Bits gleich 1, dann ist das Ausgangssignal t2 des ODER-Gliedes O1 ebenfalls gleich 1. Dadurch wird der Schalter JSW6 geöffnet, so daß der Inhalt von SH1, nämlich j(b. + b. ) X. an einem 2^-1-Akkumulator ADD4 angelegt werden kann. Zu jeder Bitzeit wird der Inhalt dieses Akkumulators |um eine Bitposition in Richtung auf die gerinstwertige Position verschoben. Wenn am Ausgang von ADD3 das 2g-te Bit
3 3
Bits b. and b. + both are equal to 1. If at least one of these bits is 1, then the output signal t 2 of the OR element O 1 is also 1. This opens the switch JSW6, so that the content of SH1, namely j (b. + B.) X. an a 2 ^ -1 accumulator ADD4 can be applied. At each bit time, the content of this accumulator | is shifted by one bit position in the direction of the least significant position. If the 2nd bit at the output of ADD3

3 13 1

auftritt, dann muß die Operation b„ X, durchgeführt werden.occurs, then the operation b "X" must be carried out.

zq κ 2zq κ 2

Zu diesem Zweck wird Schalter SW5 geöffnet und wenn b_ = 1 ist, dann wird X. dem Inhalt des Akkumulators ADD4, gesteuert durch SW6 und ODER-Glied 01, hinzugefügt.For this purpose switch SW5 is opened and if b_ = 1 then X. is added to the contents of the accumulator ADD4, controlled by SW6 and OR gate 01.

Der Ausdruck C, kann mit einer Schaltung ähnlich der in Fig. 4 ermittelt werden, vorausgesetzt, daß anstelle der Addierschaltung ADD3 eine Subtrahierschaltung vorgesehen wird.The expression C, can be used with a circuit similar to that in Fig. 4 can be determined, provided that a subtracting circuit is provided instead of the adding circuit ADD3.

Bisher waren alle Ausdrücke a als positiv angenommen worden. Wo dies nicht der Fall ist, wird ein konstanter Wert d = IanI den Ausdrucken der Folge {a } zugefügt und dasSo far, all of the expressions a were assumed to be positive. Where this is not the case, a constant value d = Ia n I is added to the expressions of the sequence {a} and that

Max
Faltungsprodukt ζ , das zu bestimmen gewünscht war, wird ersetzt durch
Max
Convolution product ζ that was wanted to be determined is replaced by

m h-o ~n " ~m-n ~ *_ xm-nm ho ~ n "~ mn ~ * _ x mn

n=on = o

FR 976 017FR 976 017

Γ809838/0594Γ809838 / 0594

• - 22 -• - 22 -

ΓΓ
n=on = o
xm-n x mn dd = Xo= X o
Wm - W m - zm + z m + dd Xo X o zm - z m - Wm- W m- XoX o

ist,is,

undand

JDa in diesem Beispiel der Ausdruck X bereits zuvor abgeispeichert wurde, ist es in der Praxis außerordentlich einfach, die sich aus der Faltung {a } H {x } ergebenden AusdrückeSince in this example the expression X has already been saved it is extremely easy in practice to find the expressions resulting from the convolution {a} H {x}

η ηη η

ζ abzuleiten. Ein Blockschaltbild einer dafür geeigneten iSchaltung zeigt Fig. 5. Am Eingang der Schaltung wird zu jedem Ausdruck aR ein Wert d - |an| hinzuaddiert. Die sich daraus ergebenden Ausdrücke werden einem Pseudo-Mersenne-,Transformationsgenerator DT zugeleitet, der normale arithmetische logische Schaltungen verwendet und Worte mit q Bit !verarbeitet. Der Generator DT kann beispielsweise gemäß Fig. 3 aufgebaut sein, vorausgesetzt, daß die Ausdrücke a für die Einspeisung am Eingang der Schaltung in der Reihenfolge a geordnet werden. Die durch den Pseudo-Mersenne-Transformationsgenerator Dt gelieferten Ausdrücke B. und B. werden zwei Schaltungen M1 und M2 zugeführt, die beide so aufgebaut sein können wie in Fig. 2 dargestellt, jedochζ to be derived. A block diagram of a circuit suitable for this is shown in FIG. 5. At the input of the circuit, for each expression a R, a value d - | a n | added. The resulting expressions are fed to a pseudo-Mersenne transformation generator DT, which uses normal arithmetic logic circuits and processes words with q bits! The generator DT can be constructed, for example, as shown in FIG. 3, provided that the terms a for the feed at the input of the circuit are arranged in the order a. The expressions B. and B. supplied by the pseudo-Mersenne transform generator Dt are fed to two circuits M 1 and M 2 , which can both be constructed as shown in FIG. 2, however

12 12
Β/ + BT sowie B. - B£ verarbeiten. Der mit MEM2 bezeichnete Speicher ist ähnlich dem Speicher MEM1 in Fig. 4 aufgebaut
12 12
Process Β / + BT and B. - B £. The memory labeled MEM2 is constructed similarly to the memory MEM1 in FIG

1 21 2

mit der Ausnahme, daß X . X. und X. gleichzeitig abgespeichertexcept that X. X. and X. saved at the same time

1212th

werden. Die von M1 und M0 gelieferten Ausdrücke C. und C. werden in der Schaltung RES1 miteinander kombiniert und liefernwill. The expressions C. and C. supplied by M 1 and M 0 are combined with one another in the circuit RES1 and supply

ffff

xcj + pc^xcj + pc ^

K K " modulo KK " modulo

FR 976 017FR 976 017

809838/0594809838/0594

28Q6B3628Q6B36

für k = 1, 2, ..., q-1. Der Ausdruck C wird aus den Ausdrücken X und A , die von DT geliefert werden, in einer Multiplizierschaltung M4 abgeleitet. Die Ausdrücke C. werden einem inversen Transformationsgenerator IMT zugeführt, der den Ausdruck W erzeugt. Der inverse Transformationsgenerator IMT kann dabei ein Gererator für eine inverse Pseudo-Mersenne-Transformation sein von an sich bekannter Bauart, die jedoch arithmetische Schaltungen vom Typ modulo 2 ^-1 zur Verarbeitung von 2q Bit verwendet. Der Generator für die inverse Pseudo-Mersenne-Transformation enthält außerdem eine Schaltung, die eine Operationfor k = 1, 2, ..., q-1. The term C is derived from the terms X and A supplied by DT in a multiplier circuit M 4 . The expressions C. are fed to an inverse transform generator IMT which generates the expression W. The inverse transformation generator IMT can be a generator for an inverse pseudo-Mersenne transformation of a type known per se, but which uses arithmetic circuits of the modulo 2 ^ -1 type for processing 2q bits. The pseudo-Mersenne inverse transform generator also includes a circuit that performs an operation

modulomodulo

(22q-1)(2 2q -1)

durchführt. Die Faltungsausdrücke ζ werden dann schließlich unter Verwendung einer Subtrahierstufe S abgeleitet, der eingangsseitig der Ausdruck dX , der von der Multiplizierschaltung M- kommt, und W zugeführt werden.performs. The convolution expressions ζ then finally become derived using a subtraction stage S, the input side the expression dX, derived from the multiplier circuit M- comes, and W are supplied.

FR 976 017FR 976 017

609838/0594609838/0594

Claims (1)

PATENTANSPRÜCHEPATENT CLAIMS Generator für Pseudo-Mersenne-Transformation Ak einer Folge von q binären Gliedern a , dadurch gekennzeichnet, daß eine erste und eine zweite Gewichtungs- undGenerator for pseudo-Mersenne transformation A k of a sequence of q binary terms a, characterized in that a first and a second weighting and 1 21 2 Akkumulatorschaltung (Comp B', Comp BT) vorgesehen sind, die, eingangsseitig durch die Glieder der Folge aAccumulator circuit (Comp B ', Comp BT) are provided which, on the input side by the elements of the sequence a ansteuerbar, ausgangsseitig die Ausdrücke B. und ß2 mitcontrollable, on the output side the expressions B. and ß2 with <nk> . , „<nk>. , " n=o
und !
n = o
and !
n=on = o n Γ 2<nk> - (-2)<nk> n L J n Γ 2 <nk> - (-2) <nk> n LJ liefern, daß ferner zwei Addier- bzw. Subtrahierstufen (AD1, AD2) vorgesehen sind, die jweils mit ihren beiden Eingängen an den Ausgängen der Gewichtungs- und Akkumulatorschaltungen angeschlossen sind und dieprovide that two adding or subtracting stages (AD1, AD2) are provided, each with their two Inputs are connected to the outputs of the weighting and accumulator circuits and the 1 21 2 Ausdrücke A/ bzw. A, liefern, und daß schließlich eine Summenschaltung (RES) vorgesehen ist, die die modulo 2*^—1 -gewichtete Addition der Ausrücke A, und A, zu A, der Pseudo-Mersenne-Transformation liefert.Expressions A / and A, respectively, yield, and that finally a Summation circuit (RES) is provided, which the modulo 2 * ^ - 1 -weighted addition of the terms A, and A, too A, which delivers the pseudo-Mersenne transform. 2. Generator nach Anspruch 1 zur Erzeugung von Pseudo-Mersenne-Transformationen von Folgen linearer Glieder a , dadurch gekennzeichnet, daß ein erstes umlaufendes Schieberegister (SR1O) mit Anzapfungen zur Abnahme von a vorgesehen ist, in dem die Glieder aR ohne das Glied a in einer auf Primitivwurzeln bezogenen Reihenfolge einspeicherbar sind, daß ferner eine Multiplizierschaltung (MULT) mit zwei Gruppen von Multiplizierstufen vorgesehen ist, wobei die eine Gruppe einen Teil der2. Generator according to claim 1 for generating pseudo-Mersenne transformations of sequences of linear members a, characterized in that a first rotating shift register (SR 1 O) is provided with taps for the decrease of a, in which the members a R without the Member a can be stored in a sequence related to primitive roots, that a multiplier circuit (MULT) is also provided with two groups of multiplier stages, one group being part of the FR976017 809838/059* FR976017 809838/059 * Glieder (a_, a_, a,.) mit geradzahligen Potenzen von 2 (2 , 2 , 2 ) und die andere Gruppe den anderen Teil der Glieder (a4, a^» a,) mit ungeradzahligen PotenzenMembers (a_, a_, a,.) With even-numbered powers of 2 (2, 2, 2) and the other group the other part of the members (a 4 , a ^ »a,) with odd-numbered powers 5 3
von 2 (2 , 2, 2 ) gewichtet multipliziert, daß ferner zwei Summenschaltungen (J, J2) vorgesehen sind, in der die Ausgangssignale der ersten Gruppe bzw. der zweiten Gruppe von Multiplizierstufen aufaddiert werden und daß schließlich eine Addier- und eine Substrahierstufe (AD1, AD2) jeweils mit ihren beiden Eingängen an den Ausgängen·beider Summenschaltungen (J, J_) angeschlossen sind und ausgangsseitig zur Abgabe des Ausdrucks A mit der Summenschaltung (RES) verbunden sind.
5 3
multiplied weighted by 2 (2, 2, 2), that two summing circuits (J, J 2 ) are provided in which the output signals of the first group or the second group of multiplier stages are added and that finally an adding and a subtracting stage (AD1, AD2) are each connected with their two inputs to the outputs of both summing circuits (J, J_) and on the output side are connected to the summing circuit (RES) for outputting the expression A.
Generator nach Anspruch 1 und 2 zur Erzeugung von Pseudo-Mersenne-Transformationen A. einer Folge von q binären Gliedern a mit n=O, 1, 2, ..., q-1 und mit einer Eingangsklemme, an der die Ausdrücke a sequentiell zugeführt werden, dadurch gekennzeichnet, daß an dieser Eingangsklemme ein erstes Schieberegister (SRO) zur Aufnahme der Ausdrücke a (für η φ O) angeschlossen ist, an dem ein zweites Schieberegister (SR1O) zur Aufnahme des Inhalts des ersten Schieberegisters (SRO), wenn dieses voll ist, in einer zu den Priraitivwurzeln in Beziehung stehenden Reihenfolge angeschlossen ist, wobei das zweite Schieberegister für einen Umlauf seines Speicherinhalts geschaltet und mit Anzapfungen für eine parallele Abgabe der Ausdrücke a versehen ist, daß ferner eine Multiplizierschaltung (MULT) für eine Gewichtung der an den Anzapfungen auftretenden Ausdrücke mit Potenzen von zwei vorgesehen ist, die alle ganzzahligen Werte von 1 bis q-1 annehmen können, daß weiterhin eine erste und eine zweite Addierschaltung (J^, J2) für eine getrennte Addition der mit geradzahligen Potenzen vonGenerator according to Claims 1 and 2 for generating pseudo-Mersenne transformations A. of a sequence of q binary terms a with n = 0, 1, 2, ..., q-1 and with an input terminal at which the expressions a are sequential are supplied, characterized in that a first shift register (SRO) for receiving the expressions a (for η φ O) is connected to this input terminal, to which a second shift register (SR 1 O) for receiving the contents of the first shift register (SRO) when this is full, is connected in an order related to the primary roots, the second shift register being switched for a circulation of its memory contents and being provided with taps for a parallel output of the expressions a, that furthermore a multiplier circuit (MULT) for a Weighting of the expressions occurring at the taps with powers of two is provided, which can assume all integer values from 1 to q-1, that a first and a second Ad dierschaltung (J ^, J 2 ) for a separate addition of the with even powers of 809838/059*809838/059 * j zwei bzw. mit ungeradzahligen Potenzen von zwei gewichteten Ausdrücke a vorgesehen sind, daß eine dritte Addierschaltung (AD1) für eine Addition der Ausgangssignale der ersten und zweiten Addierschaltung und eine vierte Addierschaltung AD2) für eine Subtraktion der Ausgangssignale der ersten und zweiten Addierschaltung voneinander vorgesehen sind und daß schließlich eine Summenschaltung (RES) vorgesehen ist, die i aus den Ausgangssignalen der dritten und vierten Addierschaltung die Ausdrücke der Pseudo-Mersenne-Transformation bildet.j two or with odd powers of two weighted expressions a are provided that a third Adding circuit (AD1) for adding the output signals the first and second adding circuit and a fourth adding circuit AD2) for subtraction the output signals of the first and second adding circuits are provided from each other and that finally a summation circuit (RES) is provided which i the expressions of the pseudo-Mersenne transform from the output signals of the third and fourth adder circuits forms. 4. Generator nach Anspruch 1, dadurch gekennzeichnet, daß die Gewichtungs- und Akkumulatorschaltungen (Comp B ,4. Generator according to claim 1, characterized in that the weighting and accumulator circuits (Comp B, Comp B. ) ein mit Anzapfungen versehenes umlaufendes Schieberegister (SR1, SW1) enthalten, dem eingangsseitig die Ausdrücke a mit η von 1 bis q-1 in einer nach primitiven Wurzeln geordneten Reihenfolge zuführbar sind, daß ein Serien-Parallelakkumulator (ADD1, R1, R1, SW3) zur Erzeugung der AusdrückeComp B.) contain a rotating shift register (SR1, SW1) provided with taps, the one on the input side the expressions a with η from 1 to q-1 can be supplied in a sequence arranged according to primitive roots are that a serial parallel accumulator (ADD1, R1, R1, SW3) for generating the expressions a-1 i-a-1 i- B11 I a Γ 2< + (-; n=o n l-B 11 I a Γ 2 < + (-; n = o n l- undand -1-1 vorgesehen ist, daß ferner ein Schalter (SW2) vorgesehen ist, über den abwechselnd eine Anzahl der Anzapfungen und sodann die verbleibenden Anzapfungen an den Akkumulator anschaltbar sind und daß schließlich Schaltmittel (SW4, R3, SW3) zum Einführen des Ausdrucks a in den Serien-Parallelakkumulator vorgesehen sind.it is provided that a switch (SW2) is also provided, via which a number of the taps alternately and then the remaining taps can be connected to the accumulator and that finally Switching means (SW4, R3, SW3) are provided for introducing the term a into the series parallel accumulator. E1R 976 017E 1 R 976 017 009833/0594009833/0594 28088362808836 5. Generator nach Anspruch 4, dadurch gekennzeichnet, daß der Akkumulator Schaltmittel (ADD2, R4) zur Erzeugung5. Generator according to claim 4, characterized in that the accumulator switching means (ADD2, R4) for generating des Ausdrucks A enthält,
ο
of the expression A contains,
ο
6. Generator nach Anspruch 4, dadurch gekennzeichnet, daß ein erstes Register (R1) mit einer Kapazität von 2q Positionen am Ausgang der Addierstufe (ADD1) angeschlossen ist, daß ein zweites Register (R2) mit 2q Positionen eingangsseitig mit dem Ausgang und ausgangssei tig mit dem Eingang des ersten Registers mit 2q Positionen verbunden ist, daß ferner die Serien-Parallelumwandlung (SW4, R3) eingangsseitig am Eingang des Generators und ausgangsseitig mit den Eingängen der Addierstufe verbunden ist und daß ein zweiter Akkumulator (ADD2, R4) für die q Ausdrücke an vorgesehen ist.6. Generator according to claim 4, characterized in that a first register (R1) with a capacity of 2q positions at the output of the adder (ADD1) is connected, that a second register (R2) with 2q positions on the input side with the output and ausgangssei tig is connected to the input of the first register with 2q positions, that furthermore the series-parallel conversion (SW4, R3) is connected on the input side to the input of the generator and on the output side to the inputs of the adder stage and that a second accumulator (ADD2, R4) for the q Expressions a n is provided. Generator für zirkuläre Faltungsoperationen einer Folge von Ausdrücken {a } mit einer Folge von Ausdrücken {X j unter Anwendung der Prinzipien eines oder mehrerer der Ansprüche 1 bis 4 mit einem Generator gemäß Anspruch 5 oder 6, dadurch gekennzeichnet, daß ein Speicher (MEM2) zur Abspeicherung der AusdrückeGenerator for circular convolution operations of a sequence of expressions {a} with a sequence of expressions {X j using the principles of an or several of claims 1 to 4 with a generator according to claim 5 or 6, characterized in that a memory (MEM2) for storing the expressions 4*4 Γ xn Γ2<η1ς> + <-2><nk>l neo ·— ■* 4 * 4 Γ x n Γ 2 <η1ς> + <- 2 ><nk> l n e o · - ■ * undand vorgesehen ist, an welchen Schaltungen (MEM2, Fign. 5,is provided on which circuits (MEM2, Fig. 5, 6) eine erste und eine zweite Multiplizierschaltung6) a first and a second multiplier circuit 111 (M1, M2) zur Erzeugung der Ausdrücke C; = A/ . X/ und111 (M1, M2) to generate the expressions C; = A /. X / and 9 2 29 2 2 Cr « AT . Xr angeschlossen ist, daß ferner an diesenCr «AT. Xr is connected that also to this JC JC JCJC JC JC 9.9. Schaltungen (MEM2, Fign. 5, 6) eine dritte Multiplizierschaltung (M4) zur Erzeugung von C=A .X angeschlossen ist, daß weiterhin an den Ausgängen der ersten und zweiten Multiplizierschaltung (M1, M2) eine Summenschaltung (RES1) zur Durchführung gewichteter Additionen angeschlosssen ist und daß ein Generator (IMT) für inverse Mersenne-Transformationen an den Ausgängen der dritten Multiplizierschaltung (M4) bzw. der Summenschaltung (RES1) angeschlossen ist.Circuits (MEM2, Fign. 5, 6) a third multiplier circuit (M4) for generating C = A .X is connected is that further at the outputs of the first and second multiplier circuit (M1, M2) a Summation circuit (RES1) for carrying out weighted Additions is connected and that a generator (IMT) for inverse Mersenne transformations at the outputs the third multiplier circuit (M4) or the summing circuit (RES1) is connected. Generator nach Anspruch 7, dadurch gekennzeichnet, daß eine Addierstufe (+) für eine Addition des Wertes d -IanI zu jedem der Ausdrücke a vor Anlegen dieser Ausdrücke an die Schaltung gemäß Fign. 5, 6 vorgesehen ist und daß in einer weiteren Stufe (M5, S) d χ X von den an den Generator (IMT) für inverse Mersenne-Transformationen anzulegenden Ausdrücken subtrahierbar ist.Generator according to Claim 7, characterized in that an adding stage (+) for adding the value d -Ia n I to each of the expressions a before these expressions are applied to the circuit according to FIGS. 5, 6 is provided and that in a further stage (M5, S) d χ X can be subtracted from the expressions to be applied to the generator (IMT) for inverse Mersenne transformations. Generator nach Anspruch 7 oder 8, dadurch gekennzeichnet, daß mindestens einer der ersten und zweiten Multiplizierschaltungen eine Addierstufe (ADD3), an derenGenerator according to claim 7 or 8, characterized in that that at least one of the first and second multiplier circuits an adder (ADD3), at whose 1 2 Eingängen die Ausdrücke B und B, liegen, sowie ein1 2 inputs the expressions B and B, lie, as well as a k K k K am Ausgang dieser Addierstufe angeschlossenes Schieberegister (SR2) enthält, an dessen Eingang und Ausgang ein UND-Glied (A1) und ein ODER-Glied (01) angeschlossen sind, daß eine durch das Ausgangssignal des UND-Gliedes gesteuerte Schiebeschaltung (SH1) eingangsseitig mit dem mindestens einen der Ausdrücke X. undContains shift register (SR2) connected to the output of this adder, at its input and output an AND gate (A1) and an OR gate (01) are connected that one by the output of the AND gate controlled shift circuit (SH1) on the input side with at least one of the expressions X. and X. enthaltenden Speicher verbunden ist, und daß ein Akkumulator (ADD4) mit seinem Eingang über einen durch das Ausgangssignal des ODER-Gliedes gesteuerten Schalter (SW6) an der Schiebeschaltung angeschlossen ist, und damit die Ausdrücke Cfc X. containing memory is connected, and that an accumulator (ADD4) is connected to its input via a switch (SW6) controlled by the output signal of the OR gate to the shift circuit, and thus the terms C fc undand liefert.supplies. FR 976 017FR 976 017 809838/0594809838/0594
DE19782806836 1977-03-15 1978-02-17 DIGITAL GENERATOR FOR PSEUDOMERSENNE TRANSFORMATION Withdrawn DE2806836A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7708591A FR2384303A1 (en) 1977-03-15 1977-03-15 DIGITAL DEVICE GENERATOR OF TRANSFORMED PSEUDO OF MERSENNE

Publications (1)

Publication Number Publication Date
DE2806836A1 true DE2806836A1 (en) 1978-09-21

Family

ID=9188423

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782806836 Withdrawn DE2806836A1 (en) 1977-03-15 1978-02-17 DIGITAL GENERATOR FOR PSEUDOMERSENNE TRANSFORMATION

Country Status (4)

Country Link
JP (1) JPS603233B2 (en)
DE (1) DE2806836A1 (en)
FR (1) FR2384303A1 (en)
GB (1) GB1599584A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2624283B1 (en) * 1987-12-08 1992-09-18 Thomson Csf INTEGRATED DIGITAL CALCULATION CIRCUIT FOR CONVOLUTIONARY SLIDING CALCULATIONS

Also Published As

Publication number Publication date
FR2384303A1 (en) 1978-10-13
JPS53114637A (en) 1978-10-06
JPS603233B2 (en) 1985-01-26
GB1599584A (en) 1981-10-07
FR2384303B1 (en) 1980-02-08

Similar Documents

Publication Publication Date Title
DE69435034T2 (en) METHOD OF DEVICE FOR CARRYING OUT A QUICK HADAMARD TRANSFORM
DE2145404A1 (en) Non-recursive digital filter device with delay and adder arrangement
DE2628473C3 (en) Digital convolution filter
DE2627405C3 (en) Circuit arrangement for calculating the fast Fourier transform (FFT)
DE19758079A1 (en) Computer system for determining product of two Galois field elements
DE2911096C2 (en)
DE2616660C3 (en) Arithmetic unit
DE2125230B2 (en) Method and circuit arrangement for the modifying processing of digital information signal sequences
DE2729912A1 (en) DIGITAL SIGNAL PROCESSING ARRANGEMENT
DE2918692C2 (en) Digital filter
DE2644506A1 (en) CALCULATOR FOR CALCULATING DISCRETE FOURIER TRANSFORMS
DE2422583A1 (en) NUMERIC FILTER
DE2615498A1 (en) CONVOLUTIONAL FUNCTION GENERATOR AND ITS APPLICATION IN DIGITAL FILTERS
DE2064606B2 (en) Arrangement for real-time processing of electrical signals by using the fast Fourier transform
DE2446493A1 (en) DIGITAL FILTER
DE2718902A1 (en) TRANSFORATION GENERATOR AND ITS USE IN THE CONSTRUCTION OF DIGITAL FILTERS
DE2451235A1 (en) CIRCUIT ARRANGEMENT FOR A DIGITAL FILTER
DE19635114A1 (en) Multiplier for calculating product of two operands
DE2704641A1 (en) DIGITAL FILTER
DE2605495A1 (en) MULTIPLICATION CIRCUIT, IN PARTICULAR FOR NUMERICAL FILTERS
DE2806836A1 (en) DIGITAL GENERATOR FOR PSEUDOMERSENNE TRANSFORMATION
DE3702697A1 (en) PARITY PRODUCTION CIRCUIT
EP0090904B1 (en) Circuit for a serially operating digital filter
DE2647774C3 (en) Circuit arrangement for coding and decoding images by matrix transformation with a weighted contribution of several pixels to a transformed pixel
DE2456245C2 (en) Circuit arrangement for a digital filter

Legal Events

Date Code Title Description
8140 Disposal/non-payment of the annual fee for main application