EP0076738B1 - Module opérateur complexe destiné notamment à la détermination analogique de transformées rapides de Fourier - Google Patents
Module opérateur complexe destiné notamment à la détermination analogique de transformées rapides de Fourier Download PDFInfo
- Publication number
- EP0076738B1 EP0076738B1 EP19820401756 EP82401756A EP0076738B1 EP 0076738 B1 EP0076738 B1 EP 0076738B1 EP 19820401756 EP19820401756 EP 19820401756 EP 82401756 A EP82401756 A EP 82401756A EP 0076738 B1 EP0076738 B1 EP 0076738B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- capacities
- amplifiers
- input
- receiving
- amplifier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06G—ANALOGUE COMPUTERS
- G06G7/00—Devices in which the computing operation is performed by varying electric or magnetic quantities
- G06G7/12—Arrangements for performing computing operations, e.g. operational amplifiers specially adapted therefor
- G06G7/19—Arrangements for performing computing operations, e.g. operational amplifiers specially adapted therefor for forming integrals of products, e.g. Fourier integrals, Laplace integrals or correlation integrals; for analysis or synthesis of functions using orthogonal functions
- G06G7/1921—Arrangements for performing computing operations, e.g. operational amplifiers specially adapted therefor for forming integrals of products, e.g. Fourier integrals, Laplace integrals or correlation integrals; for analysis or synthesis of functions using orthogonal functions for forming Fourier integrals, harmonic analysis and synthesis
Definitions
- the field of the present invention is that of analog computation, and in particular the computation of fast Fourier transforms.
- One of the most interesting applications of Fourier transforms is the spectral analysis of electrical signals, and one of the goals to be achieved is the possibility of performing this spectral analysis in real time, as the arrival of these signals. The speed of the calculation is therefore essential.
- the discrete Fourier transforms are mathematically summed up as a product of a vector of complex numbers (which in practice are samples of signals with a real part and an imaginary part) by a complex matrix whose terms are complex numbers of module 1 and of integer multiple angles of 2 ⁇ / N if N is the number of signal samples used to calculate the transform.
- Each complex term of the vector representing the Fourier transform is therefore a sum of products of a sample (real part and imaginary part) by a coefficient cos 2k ⁇ / N + j sin 2k ⁇ / N where k is an integer between 0 and N -1, N is the number of samples processed, j is the pure imaginary number whose square is-1.
- MC Pease has shown that one can perform an analog computation of a fast Fourier transform according to a repetitive algorithm which results in the parallel use of a network of N / 2 operator operators with two inputs and two outputs, which receive two complex numbers on their inputs and which provide weighted sums of inputs on their outputs.
- each operator supplies on the one hand the sum of the inputs and on the other hand the difference multiplied by a unit vector of angle 2nk / N, k which can vary from 0 to N-1.
- N 2 P
- we will use a network of N / 2 complex operators we will introduce N signal samples, we will recirculate p times the output quantities to the inputs with a cross-connection of the interconnections, each time modifying the rotations appropriately introduced by each operator, and we obtain at the end N complex quantities representing the fast Fourier transform of the input signal.
- This type of parallel processing with recirculation is longer than a processing with p networks but it saves a good number of operators.
- the aim of the present invention is to produce such a complex operator using a minimum of components, which can be modified at will as far as possible. identifies the value of the angle of rotation 2k ⁇ / N, so that it is particularly suitable for the analogical calculation of fast Fourier transforms according to the Paese algorithm.
- This module is essentially constituted in the following manner, to first carry out the quantities x i and y i from voltages a o , a i , b o , b 1 : it first comprises two operational amplifiers with switched capacitors mounted identically, with a loopback capacity connected on the one hand to the inverting input of the amplifier and on the other hand either to ground by a first transistor or to the output of the amplifier by a second transistor, a third transistor being provided to allow short-circuiting output and input of the amplifier; a plurality of parallel input capacitors is provided, each of which can be put into service or isolated by a respective switch (transistor), these capacitors having the values, referred to the value of the loopback capacitor, of cosines of angles 2k ' ⁇ / N between 0 and n / 4 where k' is a transformation of the number k such that the angles 2k' ⁇ / N and 2k ⁇ / N are linked by simple trigonometric relations including sign changes or sine permut
- the two amplifiers are mounted symmetrically in the sense that if, for one of the amplifiers, it is the capacities having the value of cosines which receive the signals a o and a 1 , then, for the other amplifier, the corresponding capacities, also having the value of cosines, will receive not a o and a 1 , but b o and b 1 .
- the operator module also comprises a switching control means for the various transistors, able on the one hand to select an input capacity having the value of a cosine and an input capacity having the value of a sine of the same angle, this selection being controlled as a function of the number k, and on the other hand to establish synchronized conduction phases between the different transistors, so as to produce on the outputs of the two amplifiers approximate values of the quantities x 1 and y 1 , the conduction phases comprising at least one phase of application of two of the four voltages a o , b o , a i , b 1 , to the selected input capacities and a phase of application of the other two voltages to these capacities, the choice of the applied voltages being performed by means of logic circuits (D2) receiving the number k.
- D2 logic circuits
- the operator module will include four additional amplifiers having a dual role: on the one hand, they will all serve as buffer memories taking samples of voltages a o , b o , a i , b 1 and keeping them in memory for apply them to the first two amplifiers; on the other hand, on the four additional amplifiers, two will be used to specify the approximate calculation made by the first two amplifiers, while the other two will be used to establish the sums a o + a 1 and b o + b 1 so as to make appear on the outputs of the four additional amplifiers respectively the quantities x 1 , y 1 , a o + a i and b o + b 1 .
- N 256
- p 8 which constitute realistic values to obtain sufficient calculation precision for many applications (for example, speech analysis).
- the module is controlled with regard to the coefficient k, that is to say the angle of rotation, by a sequencer which delivers binary signals representing the desired value for the coefficient k, which it is recalled that it takes different successive values for the same operator module when the Fourier transform is calculated by a single network, looped on itself, of N / 2 operators.
- N 256
- k will be represented by a number of eight binary elements.
- equations (3) and (4) it is necessary to establish from four electric voltages a o , a 1 , b o , b 1 , differences a o - ai and b o - b 1 , then to make a sum or a weighted difference of these two differences, the weighting being made for the two equations with coefficients which are the sine and the cosine of the same angle.
- This structure comprises an operational amplifier AO, a loopback capacitor C 1 , two input capacitors C o and C ' o , and switches which are preferably MOS type insulated gate transistors ( metal-oxide-semiconductor) if the operator module is manufactured as an integrated circuit in MOS technology.
- switches which are preferably MOS type insulated gate transistors ( metal-oxide-semiconductor) if the operator module is manufactured as an integrated circuit in MOS technology.
- the amplifier has a non-inverting input to ground and an inverting input connected to a terminal of each of the three capacitors C o , C ' o , C 1 .
- the other terminal of C o is connected, via a MOS transistor T a to a signal input a o from which it can be isolated when the transistor T a is blocked. It is also connected to another input for the signal a 1 by a transistor T'a which can also isolate it.
- the conduction phases of T a and T'a are disjoint, that is to say that they are not conductive at the same time.
- the other terminal of the capacitor C ' o is connected to a signal input b o and a signal input b 1 respectively by a transistor T b and a transistor T' b whose conduction phases are disjoint and are either the same as those of T a and T'a, or permuted, that is to say the same as those of T'a and T a .
- FIG. 1 the other terminal of the capacitor C ' o is connected to a signal input b o and a signal input b 1 respectively by a transistor T b and a transistor T' b whose conduction phases are disjoint and are either the same as those of T a and T'a, or permuted, that is to say the same as those of T'a and T a .
- the phases are permuted, that is to say that T a and T ' b simultaneously conduct the signals a o and b 1 at the capacities C o and C' o , after which, in a phase disjoined from the previous one , T'a and T b simultaneously conduct the signals a 1 and b o to the capacities C o and C ' o .
- the other terminal of Ci is connected via a switch (transistor T1) to ground, and via another switch (transistor T2) to the output of the amplifier AO.
- the conduction phases of T1 and T2 are the same as those of T a and T'a or are permuted. In Figure 1, these are the same.
- a transistor T3 is connected between the inverting input of the amplifier AO and its output and can therefore achieve loopback in unit gain of this amplifier.
- the conduction phase of T3 is the same as that of T1.
- this summing-weighting device is as follows: in a first phase (T1, T3, T a , T ' b conductors), Ci is discharged at zero; at the same time, C o and C ' o are charged respectively at the voltages a o and b 1 , the amplifier being looped in unit gain by the transistor T3 to maintain the potential of the inverting input substantially at zero.
- the charges of the capacities C o , C ' o and Ci are thus respectively C o a o , C' 0 b 1 and zero.
- the assembly described has the advantage of eliminating the influence of this voltage on the final result.
- the transistors T1, T3, T a , T ' b are then blocked and an overall charge - (C o a o + C' 0 b 1 ) is trapped on the terminals of the capacities connected to the inverting input (from where they cannot escape).
- the transistors T'a, T b and T2 are made conductive.
- Capacities C o and C ' o respectively take charges which are -a 1 C 0 and -b o C' o on their armatures connected to the input of the amplifier.
- the global conservation of the charges connected to the inverting input, from which they cannot escape, requires that the reinforcement of the capacity Ci connected to this input take a charge such as the sum of this charge and the new charges stored on C o and C ' o is equal to the global charge - (a o C o + b 1 C' 0 ), trapped in the previous phase.
- the armature of the capacitor Ci connected to the input of the amplifier must take a load equal to (a 1 C 0 + b 0 C ' 0 ) - (a 0 C 0 + b 1 C' 0 ) .
- the output potential of the operational amplifier takes on a value:
- a first weighting summator is mainly assigned to the realization of the quantity (5), it can be used also to establish the quantity (8) by change of sign, that is to say inversion of the control phases of T a and T'a, to also establish the quantity (11) by permutation of the input signals a o and b o on the one hand, a 1 and b 1 on the other hand, and finally to establish the quantity (10) by combining this change of sign and this permutation.
- the second amplifier is mainly assigned to the realization of the quantity (9), it can also be used to establish the quantities (12) by change of sign, (6) by permutation of the inputs, and (7) by combining both.
- Other possibilities could be envisaged, for example the assignment of the first amplifier to the establishment of equations (5) to (8) and the assignment of the second to the establishment of equations (9) to (12) this by simple permutation of the control phases of the transistors T a , T'a, T b . T ' b .
- each operational amplifier not a capacity C o and a capacity C ' o , but a plurality of capacities C o and capacities C' o , having as values the cosines and sines of angles 2k ⁇ / N (values taken with reference to the loopback capacity Ci assumed to be of unit value for simplicity since only the relationships between the input capacities C o , C ' o and the capacity C 1 ).
- each capacitor is in series with a commissioning switch (transistors T c for capacitors C o representing cosines of angles 2k ⁇ / N, and transistors T s for capacitors representing sines of the same angles). All the sets T c , C o are in parallel and replace the capacitor C o of FIG. 1; similarly, all the sets T s , C ' o are in parallel and replace the capacitance C' o of FIG. 1.
- the programming will consist notably in designating a single pair of capacitors C o , C ' o corresponding to the cosine and to the sine from the same angle, this for each operational amplifier, the designation being made by switching on the transistors T c , T s corresponding to this pair, the other transistors T c , T s remaining blocked.
- a decoder receiving the number k will allow this designation to be made for a given calculation cycle, the designated capacities being inserted into the circuit according to the diagram in FIG. 1.
- the first measure consists in noticing that if we have capacities representing the sines and cosines of the angles between 0 and ⁇ / 4, we can deduce the sines and cosines of all the other angles of the trigonometric circle, on the one hand, by modification of the sign of the sine or of the cosine, by bringing certain angles to an angle between 0 and ⁇ / 4 by complementation with ⁇ or 2 ⁇ , or by subtraction from ⁇ , and on the other hand, by replacement of a sine with a cosine and conversely by bringing certain angles to an angle between 0 and ⁇ / 4 by complementation to ⁇ / 2 or 3 ⁇ / 2 or by subtraction from ⁇ / 2 or 3 ⁇ / 2.
- the summator-weighter receives a number k corresponding to any angle 2 k ⁇ / N, we can transform this angle into an angle 2k'n / N between 0 and ⁇ / 4 with a simple well defined relation between the cosines and sine of the angles 2k ⁇ / N and 2k' ⁇ / N.
- This simple relation will make it possible to define which are the quantities among (5) to (12) which, expressed as a function of k ', correspond precisely to the quantities (5) and (9) expressed as a function of k, dependent on a logic circuit order the adder-weighter to establish the quantities thus defined.
- a simple trigonometric transformation (change of sign or permutation of sine or cosine) by which one passes from an angle 2k ⁇ / N of this half-quadrant to an angle 2k' ⁇ / N of the first half-quadrant (0, ⁇ / 4).
- the first three bits B7, B6, B5 constitute a quadrant address designating a half-quadrant among eight in which is the angle 2k ⁇ / N.
- Half-quadrants numbered 0 to 7 in the counterclockwise direction have successive addresses B7, B6, B5: 000, 001, ..., 111.
- This logical operation is extremely simple and corresponds to the transition from the angle 2k ⁇ / N to the angle 2k' ⁇ c / N by complementation to ⁇ / 2, ⁇ , 3 ⁇ / 2, or 2 ⁇ .
- FIG. 2 represents the double summing-weighting device according to the invention, programmable in angle of rotation and operating as has been explained above.
- It includes an amplifier A01 with a loop capacity C1 supposed to be unitary switched by three tranistors T1, T2, T3, and another amplifier A02 looped in the same way by a capacity C2 also unitary switched by three transistors T'1, T'2 , T'3.
- the arrangements of these capacitors and transistors are those of FIG. 1.
- These amplifiers supply values corresponding to the matrix equations (13) and (14) and both receive signals a o b o a 1 b 1 through two capacitance networks switched RCC1 and RCC2 are practically identical.
- RCC1 has been represented in detail with its seventeen capacities having as values the cosines and sines of the angles multiple of ⁇ / 32 between 0 and ⁇ / 4.
- the inputs a o and a 1 are connected by transistors T a and T'a, not directly to capacitors C o as in FIG. 1, but to a terminal of an input permutation device P e which receives on the other hand on another terminal the signals b o and b 1 through the tranistors T b and T ' b .
- the signals received by the permutation device P e are transmitted as such or are crossed according to the state of this device which is controlled by a detector D 1 receiving the number k: for certain values of k (in fact of the three bits of greatest weight of k), there will be permutation of the entries a o , a 1 and b o , b 1 .
- the outputs of the permutation device P e are connected one to a terminal of an assembly comprising in parallel nine capacitors C o (and their individual switches for putting into service T c ), these capacitors having the value of the cosines of angles multiples of ⁇ / 32 between 0 and ⁇ / 4, the other to a set comprising in parallel eight capacitors C ' o and their individual switches for commissioning T s , these capacitors having for value the sines of the same angles except sin 0 which sucks.
- the parallel assemblies are also both connected to the inverting input of the amplifier A01.
- the decoder D1 defines either a state in which the signals a o and a 1 are transmitted to the capacities C o (cosine) and the signals b o and b 1 to the capacities C ' o (sine), or the opposite (a o and a 1 with capacities C ' o and b o and b 1 with capacities C' o ).
- the transistors T a , T'a, T b , T ' b are controlled by another decoder D2 which can be called a sign change decoder, because, for certain values of the number k which it receives, it makes it possible to pass from a quantity (5) to (12) on the contrary.
- This decoder acts to establish either a simultaneity of conduction phase of T a and T ' b with T1 or on the contrary a simultaneity of phase of T'a and T b with T1.
- the switched capacity network RCC2 differs from the network RCC1 only in that its sign change decoder acts to establish either a phase simultaneity of T a and T b with T1 or, on the contrary, a phase simultaneity of T 'a and T' b with T1, and by the fact that the values of k defining this choice are different from the values of k defining the corresponding choice for the network RCC1.
- the input permutation decoder D1 is common to the two networks and controls the input permutation devices Pe of the two networks in complementary directions so that if one of the amplifiers achieves a quantity taken from (5 ) to (8), the other additionally achieves a quantity taken from (9) to (12).
- the input permutation devices Pe can be produced each by four MOS transistors.
- equations (17) and (18) which give the rules are calculated in an optimal way using precisely the operational amplifiers A01 and A02 of figure 2 with the networks of capacities which are associated to them .
- FIG. 3 represents the constitution of the circuit which makes it possible to make this interpolation after the calculation of X 1 and Y 1 has been carried out for angles multiple of ⁇ / 32.
- FIG. 3 shows again the amplifiers A01 and A02, but without the capacitance networks RCC1 and RCC2.
- the input capacitance C ′ o with a value sin n / 32 (the smallest) has been shown since it will be used for interpolation.
- these voltage values are stored in two capacitors C 3 and C 4 which constitute memories of the values of X 1 and Y 1 .
- These capacities are the loopback capacities of two operational amplifiers A03 and A04 which, moreover, can initially serve to transmit the values a 1 and b 1 to the inputs of the circuit of FIG. 2.
- Switches MOS transistors
- Switches are provided to switch either the signals a 1 and b 1 , ie the signals X 1 and Y 1 at the input of the amplifiers A03 and A04.
- the values X 1 and Y 1 are therefore applied to the inputs of amplifiers A03 and A04 via capacitors C ' 3 and C' 4 , whose ratio to capacitances C 3 and C 4 is 1 and whose ratio to capacitances Ci and C 2 of the amplifiers A01 and A02 is also preferably 1.
- the value of the input voltages X 1 and Y 1 is transferred to the output of the operational amplifiers A03 and A04 which keep them in memory thanks to the loopback capabilities C 3 and C 4 .
- the transistors T1, T2, T3 operate as described with reference to FIG. 1.
- the transistors T'a and T " a or T ' b and T" b are combined with conduction phases disjoint corresponding respectively to those of T'1 and T'2 for the amplifier A02 but corresponding respectively to those of T2 and T1 for the amplifier A01 (in order to achieve a reversal of sign).
- the switching of the capacities C “ 3 and C” 4 at the inputs of the amplifiers A03 and A04 has the effect of increasing the voltages at the terminals of C 3 and C 4 d 'a value corresponding to the voltages applied to the input multiplied by the ratio of the capacities C " 3 / C 3 or C" 4 / C 4, ie 0.25.
- This switching is done by charging C “ 3 connected to the input of amplifier A03 while the latter is looped in unit gain and that C 3 is isolated both from the ground and from the output of the amplifier, then by connecting the capacitor C “ 3 , isolated from the source which charged it, between the input of A03 and the ground, at the same time as C 3 is looped back to the output of A03.
- the reset of the charge of the capacitors C 3 and C 4 is necessary at the start of a calculation cycle so that it is indeed the signals a 1 and b 1 which then appear at the output terminals of the amplifiers A03 and A04.
- This reset can be done by an arrangement of switches such as T1, T2 and T3 in Figure 1, which has the advantage of storing, in order to compensate, the offset voltage of the operational amplifier.
- switches such as T1, T2 and T3 in Figure 1
- X 1 and Y 1 have been calculated and before storing them in C 3 and C 4 , it is necessary to discharge C 3 and C 4 to zero or to the offset voltage of the amplifiers.
- this reset does not take place when the voltages - Y 1 sin ⁇ / 32 and X 1 sin ⁇ / 32 are brought back to the input of amplifiers A03 and A04.
- the interpolation must consist in adding an angle ⁇ / 64 and not ⁇ / 128 we can choose either to do so that the capacities C " 3 and C” 4 have values 0.5 instead of 0.25 (for example with two capacities C " 3 in parallel), that is to say the interpolation twice at ⁇ / 128, that is to say once again bringing back to the input of the capacitances C " 3 and C” 4 the signals already interpolated a first time at the output of the amplifiers A01 and A02.
- a more precise interpolation than at ⁇ / 128 (if N is greater than 256) can be done simply by providing, for example, capacities C " 3 and C" 4 twice as small.
- An interpolation at - ⁇ / 128 will be done by reversing the phases of the transistors T'a and T “ a or T ' b , T" b for switching the two capacitors sin n / 32.
- a decoder D5 receiving the number k, or more simply its last two bits, controls the choice of the commissioning of a capacity C " 3 or C" 4 when it is necessary to make an interpolation. It also allows the phase inversion of the transistors T'a and T " a or T ' b , T" b if necessary.
- the outputs of amplifiers A03 and A04 provide the signals a 1 and b 1 (which they received on their inputs and taken into memory), to apply these two signals to the two amplifiers A01 and A02, in the interpolation phase, the outputs of amplifiers A03 and A04 first supply X 1 and Y 1 respectively, then, if there is indeed an interpolation calculation to be made, they provide x 1 and y 1 .
- this arrangement with amplifier forming input memory is particularly useful in the case where the complex operator module establishing the quantities x o , y o , x 1 , y 1 from signals a o , b o , a 1 , b i , is looped back on itself: a memory is required to keep the samples of input signals for the entire time of the generation of the output signals before the output signals are again applied to the inputs and processed for undergo additions and weights themselves.
- the complex operator module according to the invention still comprises two other amplifiers A05 and A06 which are coupled to the rest of the circuit of FIG. 3 in the manner shown in FIG. 4.
- the complex operator module according to the invention still comprises two other amplifiers A05 and A06 which are coupled to the rest of the circuit of FIG. 3 in the manner shown in FIG. 4.
- FIG. Figure 4 we have not shown in FIG. Figure 4 all the elements coupled to amplifiers A01 and A02, the details of which have already been explained.
- Amplifiers A05 and A06 are mounted according to a diagram which is similar to that of FIG. 1, that is to say that amplifier A05 has an input non-inverting to ground and an inverting input connected to a capacitor loopback C 5 (C 6 for A06) and with two input capacities C ' 5 and C “ 5 (C' 6 and C” 6 ); capacitors C ' 5 and C “ 5 are also each in series with two transistors (analogous to T a , T'a, T b , T' b ); for capacitance C ' 5 one of these transistors is connected to a signal input a o and the other to ground; for capacitance C " 5 , one of the transistors is connected to the output of amplifier A03 and the other to ground; the other terminal of the loopback capacitance can be grounded by a transistor analogous to T1, or connected to the output of A05 by a transistor analogous to T2; a transistor analogous to T3 makes it possible to loop the output of the amplifier A05 directly
- the assembly of the amplifier A06 is exactly the same with a capacity C ' 6 which receives b o and a capacity C "6 connected to the output of A04.
- the third phase consists in applying to the amplifiers A01 and A02 a pair of signals, for example a o and b o , but it can be a o and b 1 or a 1 and b o or a 1 and b 1 according to the amplifier and according to the value of k received and decoded by the device; at the same time the capacities Ci and C 2 are discharged; the fourth phase consists in applying the other pair of signals to the amplifiers, through the same capacities designated by the deco dage of k, while the capacitors C 1 , C 2 are looped between the output and the input of each amplifier A01 and A02.
- the fifth phase consists in making the transistors connecting the outputs of amplifiers A03 and A04 (carrying a 1 and b 1 ) respectively to capacities C " 5 and C" 6 by looping A05 and A06 in unity gain, and by isolating C 5 and C 6 both from the output of these amplifiers and from ground to keep their charges.
- the outputs of the permutation device P s are connected to the capacitors C ' 3 and C' 4 respectively at the same time as the capacitors C 3 and C 4 are grounded and the amplifiers A03 and A04 are looped in gain. unitary.
- the seventh phase isolates C ' 3 and C' 4 from the outputs of A01 and A02 while connecting them to ground and reconnecting the capacities c 3 and C 4 in loopback between the input and output of amplifiers A03 and A04.
- the charges stored on C ' 3 and C' 4 during the sixth phase are transferred to C 3 and C 4 so that the voltages X 1 and Y 1 appear at the output of A03 and A04.
- the calculation of the interpolation is prepared, if necessary: commissioning of the sin ⁇ / 32 capacities on the operational amplifiers, selection of a value capacity C " 3 and C" 4 0.25 or 0.50, inversion or not of the phases of the transistors T'a, T " a , T ' b , T" b , etc.
- the capacitors C 1 , C 2 of the amplifiers A01 and A02 are discharged, T ' b and T " a (or the opposite) are made conductive according to the diagram of FIG. 3 and the amplifiers A01 and A02 are looped in unity gain.
- the two other transistors T " b and T'a are made conductive at the same time as the capacitors C 1 , C 2 are isolated from the ground and looped back over the amplifiers A01 and A02; quantities -Y 1 sin n / 32 and X 1 sin ⁇ / 32 are thus stored as outputs of A01 and A02.
- the ninth phase consists in connecting the upstream terminals of the capacitors C “ 3 and C” 4 selected to ground by eliminating the unit gain of the amplifiers A03 and A04 and by looping the capacitors C 3 and C 4 between the input and the output of these amplifiers.
- This switching ensures the transfer of a charge- (C " 3 / C 3 ) Y 1 sin ⁇ / 32 on the capacity C 3 , without removing the charge C 3 X 1 which was already there.
- This ninth phase therefore ends the calculation of the interpolation and the voltages present at the output of amplifiers A05, A06, A03, A04 are respectively the voltages sought x o , y o , x 1 , Y 1 defined by equations (1) to (4).
- the first phase of the following cycle consists in taking samples from the capacities C' 5 , C ' 6 , C' 3 , C ' 4 of new input signals and storing these signals in memory C 5 , C s , C 3 , C 4 , after which these signals may disappear or be modified without influencing the progress of the new calculation cycle.
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Amplifiers (AREA)
- Filters That Use Time-Delay Elements (AREA)
Description
- Le domaine de la présente invention est celui du calcul analogique, et notamment du calcul de transformées rapides de Fourier. L'une des applications les plus intéressantes des transformées de Fourier est l'analyse spectrale de signaux électriques, et l'un des buts à atteindre est la possibilité d'effectuer cette analyse spectrale en temps réel, au fur et à mesure de l'arrivée de ces signaux. La rapidité du calcul est donc essentielle.
- Les transformées discrètes de Fourier se résument mathématiquement en un produit d'un vecteur de nombres complexes (qui en pratique sont des échantillons de signaux avec une partie réelle et une partie imaginaire) par une matrice complexe dont les termes sont des nombres complexes de module 1 et d'angles multiples entiers de 2π/N si N est le nombre d'échantillons de signaux servant au calcul de la transformée.
- Chaque terme complexe du vecteur représentant la transformée de Fourier est donc une somme de produits d'un échantillon (partie réelle et partie imaginaire) par un coefficient cos 2kπ/N + j sin 2kπ/N où k est un entier compris entre 0 et N-1, N est le nombre d'échantillons traités, j est le nombre imaginaire pur dont le carré est-1.
- On voit donc que l'obtention des divers coefficients complexes de la transformée discrète de Fourier consisterait à effectuer une série de N2 multiplications de nombres complexes par des coefficients cos 2kπ/N + j sin 2kπ/N et N2 additions des produits obtenus.
- M.C. Pease a montré que l'on pouvait exécuter un calcul analogique d'une transformée rapide de Fourier selon un algorithme répétitif qui se traduit par l'utilisation en parallèle d'un réseau de N/2 opérateur complexes à deux entrées et deux sorties, qui reçoivent sur leurs entrées deux nombres complexes et qui fournissent sur leurs sorties des sommes pondérées des entrées. En pratique, chaque opérateur fournit d'une part la somme des entrées et d'autre part la différence multipliée par un vecteur unitaire d'angle 2nk/N, k pouvant varier de 0 à N-1.
- Les sorties des opérateurs sont envoyées vers un autre réseau de N/2 opérateurs complexes, avec un certain brassage des interconnexions entre les sorties du premier réseau et les entrées du second; de même, les sorties du deuxième réseau sont à nouveau envoyées, avec le même brassage d'interconnexions, vers un troisième réseau, et ainsi de suite: si N = 2P, p réseaux sont nécessaires pour qu'à partir de N échantillons de signaux appliqués au premier réseau, on obtienne sur les sorties du dernier réseau N grandeurs représentant la transformée rapide de Fourier du signal échantillonné à l'entrée.
- Cependant, comme le brassage entre les interconnexions est le même entre les réseaux successifs, il y a une configuration spatiale répétitive dont le motif unitaire ne comprend qu'un seul réseau de N/2 opérateurs complexes. Bien que les rotations vectorielles d'angle 2πk/N exécutées par les opérateurs varient d'un opérateur d'un réseau à l'opérateur de même position du réseau voisin, on peut aussi souhaiter profiter de la répétitivité de la configuration spatiale pour n'utiliser qu'un seul réseau de N/2 opérateurs dont les coefficients de pondération (c'est-à-dire les cosinus et sinus de l'angle 2nk/N) seront commandables, les sorties du réseau étant ramenées plusieurs fois successivement vers les entrées (avec toujours le même brassage, mais avec une modification des angles 2 n k/N des différents opérateurs à chaque recirculation). Si N = 2P, on utilisera un réseau de N/2 opérateurs complexes, on introduira N échantillons de signaux, on fera recirculer p fois les grandeurs de sortie vers les entrées avec un brassage des interconnexions, en modifiant à chaque fois convenablement les rotations introduites par chaque opérateur, et on obtiendra à la fin N grandeurs complexes représentant la transformée rapide de Fourier du signal d'entrée. Ce type de traitement en parallèle avec recirculation est plus long qu'un traitement avec p réseaux mais il économise un bon nombre d'opérateurs.
- On pourra se reporter à l'article de M.C. Paese: «An adaptation of the fast Fourier transform for parallel processing», dans le Journal ACM-vol. 15, pages 252-264, avril 1968, et à l'article de H.S.Stone «Parallel processing with the perfect shuffle» dans IEEE transactions on computers, vol. C-20n°2, pages 153-161, février 1971.
- Quel que soit le mode de traitement adopté, c'est-à-dire avec ou sans recirculation des grandeurs calculées, on est amené à utiliser des opérateurs complexes qui, à partir de deux grandeurs complexes d'entrée c0 = ao + jbo et ci = ai + jb1 introduites en fait sous forme de quatre grandeurs électriques (tensions) ao, bo, a1, b1, fournit deux grandeurs complexes de sortie:
obtenues en fait sous forme de quatre grandeurs électriques (tensions) xo, yo, x1, y1, avec: - Sous une autre forme mathématique, cela revient à dire que l'opérateur complexe réalise:
- - d'une part, un premier vecteur complexe qui est simplement la somme des grandeurs complexes d'entrée:
- - d'autre part, un deuxième vecteur qui est la différence des grandeurs d'entrée multipliée par une rotation simple d'angle 2kπ/N:
- Le but de la présente invention est de réaliser un tel opérateur complexe utilisant un minimum de composants, modifiable à volonté en ce qui concerne la valeur de l'angle de rotation 2kπ/N, afin qu'il soit particulièrement adapté au calcul analogique de transformées rapides de Fourier selon l'algorithme de Paese.
- Ce module est essentiellement constitué de la manière suivante, pour réaliser d'abord les quantités xi et yi à partir de tensions ao, ai, bo, b1: il comprend d'abord deux amplificateurs opérationnels à capacités commutées montés identiquement, avec une capacité de bouclage reliée d'une part à l'entrée inverseuse de l'amplificateur et d'autre part soit à la masse par un premier transistor soit à la sortie de l'amplificateur par un second transistor, un troisième transistor étant prévu pour permettre de court-circuiter sortie et entrée de l'amplificateur; une pluralité de capacités d'entrée en parallèle est prévue, chacune pouvant être mise en service ou isolée par un interrupteur (transistor) respectif, ces capacités ayant pour valeurs, rapportées à la valeur de la capacité de bouclage, des cosinus d'angles 2k'π/N compris entre 0 et n/4 où k' est une transformation du nombre k telle que les angles 2k'π/N et 2kπ/N soient liés par des relations trigonométriques simples comprenant des changements de signe ou des permutations de sinus et cosinus; une autre pluralité de capacités, agencée de la même manière, est prévue à l'entrée de l'amplificateur, mais elles ont pour valeurs les sinus des mêmes angles; l'une des pluralités de capacités reçoit d'un côté le signal ao à travers un transistor et le signal a1 à travers un autre, tandis qu'elle est reliée de l'autre côté à l'entrée de l'amplificateur; l'autre pluralité de capacités reçoit d'un côté le signal bo à travers un transistor et le signal b1 à travers un autre, tandis qu'elle est reliée de l'autre côté à l'entrée de l'amplificateur. Les deux amplificateurs sont montés symétriquement en ce sens que si, pour l'un des amplificateurs, ce sont les capacités ayant pour valeur des cosinus qui reçoivent les signaux ao et a1, alors, pour l'autre amplificateur, les capacités correspondantes, ayant aussi pour valeur des cosinus, recevront non pas ao et a1, mais bo et b1. La réciproque est vraie pour les capacités ayant pour valeur des sinus; le module opérateur comporte encore un moyen de commande de commutation des différents transistors, apte d'une part à sélectionner und capacité d'entrée ayant pour valeur un cosinus et une capacité d'entrée ayant pour valeur un sinus du même angle, cette sélection étant commandée en fonction du nombre k, et d'autre part à établir des phases de conduction synchronisées entre les différents transistors, de manière à produire sur les sorties des deux amplificateurs des valeurs approchées des quantités x1 et y1, les phases de conduction comprenant au moins une phase d'application de deux des quatre tensions ao, bo, ai, b1, aux capacités d'entrée sélectionnées et une phase d'application des deux autres tensions à ces capacités, le choix des tensions appliquées étant effectué au moyen de circuits logiques (D2) recevant le nombre k.
En pratique, le module opérateur comportera quatre amplificateurs supplémentaires ayant un double rôle: d'une part, ils serviront tous les quatre de mémoires tampons prélevant des échantillons de tensions ao, bo, ai, b1 et les gardant en mémoire pour les appliquer aux deux premiers amplificateurs; d'autre part, sur les quatre amplificateurs supplémentaires, deux serviront à préciser le calcul approché fait par les deux premiers amplificateurs, tandis que les deux autres serviront à établir les sommes ao + a1 et bo + b1 de manière à faire apparaître sur les sorties des quatre amplificateurs supplémentaires respectivement les quantités x1, y1, ao + ai et bo + b1. - D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit et qui est faite en référence aux dessins annexés dans lesquels:
- - la figure 1 représente schématiquement un sommateur-pondérateur constituant la base du module opérateur de l'invention,
- - la figure 2 représente un sommateur-pondérateur capable de produire les tensions x1 et y1 correspondant aux équations (3) et (4),
- - la figure 3 montre un module opérateur avec une possibilité d'interpolation pour préciser la valeur de x1 et yi,
- - la figure 4 montre schématiquement l'ensemble de la structure du module opérateur complexe avec six amplificateurs opérationnels.
- Dans la description qui suit, on s'intéressera à un module opérateur capable d'effectuer la somme simple de deux nombres complexes, et la différence de ces nombres multipliée par e 2jkπ/N avec N = 2P et k = 0 à N-1. Cette somme et cette différence correspondent aux équations (1) à (4) écrites plus haut.
- Lorsque des exemples numériques seront donnés, on prendra N = 256, p = 8 qui constituent des valeurs réalistes pour obtenir une précision de calcul suffisante pour beaucoup d'applications (par exemple, l'analyse de la parole).
- Le module est contrôlé en ce qui concerne le coefficient k, c'est-à-dire l'angle de rotation, par un séquenceur qui délivre des signaux binaires représentant la valeur désirée pour le coefficient k, dont on rappelle qu'il prend des valeurs successives différentes pour un même module opérateur lorsque la transformée de Fourier est calculée par un réseau unique, bouclé sur lui-même, de N/2 opérateurs. Pour N = 256, k sera représenté par un nombre de huit éléments binaires.
- Comme on le remarque d'après les équations (3) et (4), il y a lieu d'établir à partir de quatre tensions électriques ao, a1, bo, b1, des différences ao - ai et bo - b1, puis de faire une somme ou une différence pondérée de ces deux différences, la pondération étant faite pour les deux équations avec des coefficients qui sont le sinus et le cosinus d'un même angle.
- A priori, il faudrait utiliser un certain nombre d'amplificateurs opérationnels pour réaliser d'abord deux différences puis la multiplication de chacune par un sinus et par un cosinus puis la somme et la différence des quantités ainsi pondérées.
- On va décrire d'abord une structure de sommateur-pondérateur capable de réaliser ces quantités pondérées avec seulement deux amplificateurs différentiels, après quoi on décrira l'ensemble du module opérateur qui utilise cette structure pour établir les équations (1) à (4).
- Cette structure, visible à la figure 1, comprend un amplificateur opérationnel AO, une capacité de bouclage C1, deux capacités d'entrée Co et C'o, et des commutateurs qui sont de préférence des transistors à grille isolée de type MOS (métal- oxyde-semiconducteur) si le module opérateur est fabriqué sous forme de circuit intégré en technologie MOS.
- L'amplificateur a une entrée non-inverseuse à la masse et une entrée inverseuse reliée à une borne de chacune des trois capacités Co, C'o, C1.
- L'autre borne de Co est reliée, par l'intermédiaire d'un transistor MOS Ta à une entrée de signal ao dont elle peut être isolée lorsque le transistor Ta est bloqué. Elle est aussi reliée à une autre entrée pour le signal a1 par un transistor T'a qui peut également l'en isoler. Les phases de conduction de Ta et T'a sont disjointes, c'est-à-dire qu'ils ne sont pas conducteurs en même temps.
- De la même manière, l'autre borne de la capacité C'o est reliée à une entrée de signal bo et une entrée de signal b1 respectivement par un transistor Tb et un transistor T'b dont les phases de conduction sont disjointes et sont soit les mêmes que celles de Ta et T'a, soit permutées c'est-à-dire les mêmes que celles de T'a et Ta. Sur la figure 1, les phases sont permutées, c'est à dire que Ta et T'b conduisent simultanément les signaux ao et b1 aux capacités Co et C'o, après quoi, dans une phase disjointe de la précédente, T'a et Tb conduisent simultanément les signaux a1 et bo aux capacités Co et C'o.
- L'autre borne de Ci est reliée par l'intermédiaire d'un commutateur (transistor T1) à la masse, et par l'intermédiaire d'un autre commutateur (transistor T2) à la sortie de l'amplificateur AO. Les phases de conduction de T1 et T2 sont les mêmes que celles de Ta et T'a ou sont permutées. Sur la figure 1, ce sont les mêmes. Enfin, un transistor T3 est relié entre l'entrée inverseuse de l'amplificateur AO et sa sortie et peut donc réaliser un bouclage en gain unitaire de cet amplificateur. La phase de conduction de T3 est la même que celle de T1.
- Le fonctionnement de ce sommateur-pondérateur est le suivant: dans une première phase (T1, T3, Ta, T'b conducteurs), Ci est déchargé à zéro; en même temps, Co et C'o se chargent respectivement aux tensions ao et b1, l'amplificateur étant bouclé en gain unitaire par le transistor T3 pour maintenir le potentiel de l'entrée inverseuse sensiblement à zéro. Les charges des capacités Co, C'o et Ci sont ainsi respectivement Coao, C'0b1 et zéro. En réalité il faudrait tenir compte de la tension de décalage (offset) de l'amplificateur, mais le montage décrit présente l'avantage d'éliminer l'influence de cette tension sur le résultat final.
- Les transistors T1, T3, Ta, T'b sont alors bloqués et une charge globale - (Coao + C'0b1) est emprisonnée sur les bornes des capacités reliées à l'entrée inverseuse (d'où elles ne peuvent s'échapper).
- A la phase suivante, les transistors T'a, Tb et T2 sont rendus conducteurs. Les capacités Co et C'o prennent respectivement des charges qui sont -a1C0 et -boC'o sur leurs armatures reliées à l'entrée de l'amplificateur. La conservation globale des charges reliées à l'entrée inverseuse, d'où elles ne peuvent s'échapper, exige que l'armature de la capacité Ci reliée à cette entrée prenne une charge telle que la somme de cette charge et des nouvelles charges stockées sur Co et C'o soit égale à la charge globale - (aoCo + b1C'0), emprisonnée à la phase précédente.
- Autrement dit, l'armature de la capacité Ci reliée à l'entrée de l'amplificateur doit prendre une charge égale à (a1C0 + b0C'0) - (a0C0 + b1C'0).
-
-
- Ceci correspond à la valeur x1 de l'équation (3).
- Mais on peut remarquer que ce montage ne se contente pas de fournir cette valeur, car il permet aussi d'inverser les signes des coefficients de pondération en cosinus et sinus: en effet, si on permute les phases de Tb et T'b, c'est-à-dire si on fait conduire Tb en même temps que T1 et T'b en même temps que T2, on obtient en sortie la valeur:
-
-
- Un deuxième amplificateur monté de manière identique mais dans lequel ce seraient les signaux ao et a1 qui seraient reliés par des transistors à une capacité C'o = Ci sin 2kπ/N et inversement les signaux bo et b1 à une capacité Co = Ci cos 2kπ/N, permet de réaliser de la même manière les sommes pondérés suivantes:
-
-
- On conçoit qu'on pourrait utiliser les deux sommateurs pondérateurs de la manière qui vient d'être décrite, l'un réalisant simplement la quantité (5) et l'autre la quantité (9) puisque ces deux quantités correspondent justement à la forme des équations (3) et (4) que l'on cherche à réaliser.
- Pourtant, on expliquera dans la suite comment on profite au contraire des multiples possibilités de signes des coefficients de pondération en sinus et cosinus et des possibilités de croisement des entrées et sorties des deux sommateurs pondérateurs pour réaliser différents couples de valeurs X1, Y1 pris parmi les équations matricielles (13) et (14), définissant donc des équations différentes de (3) et (4) mais permettant, en combinaison avec la connaissance de relations trigonométriques simples, de réduire l'encombrement du module opérateur complexe que l'on cherche à réaliser.
- On peut d'ores et déjà noter, car c'est selon ce principe que fonctionne le dispositif décrit ci-après dans le détail, que si un premier sommateur pondérateur est principalement affecté à la réalisation de la quantité (5), il pourra servir également à établir la quantité (8) par changement de signe, c'est-à-dire inversion des phases de commande de Ta et T'a, à établir aussi la quantité (11) par permutation des signaux d'entrée ao et bo d'une part, a1 et b1 d'autre part, et enfin à établir la quantité (10) en combinant ce changement de signe et cette permutation. De même, si le second amplificateur est affecté principalement à la réalisation de la quantité (9), il pourra aussi servir à établir les quantités (12) par changement de signe, (6) par permutation des entrées, et (7) en combinant les deux. D'autres possibilités pourraient être envisagées, par exemple l'affectation du premier amplificateur à l'établissement des équations (5) à (8) et l'affectation du second à l'établissement des équations (9) à (12) ceci par simple permutation des phases de commande des transistors Ta, T'a, Tb. T'b.
- On va maintenant expliquer en référence à la figure 2 comment on utilise au mieux ces propriétés pour réaliser un double sommateur pondérateur, programmable en ce qui concerne la valeur de k, ce qui sera particulièrement utile pour la réalisation d'un module opérateur complexe réalisant une rotation dont l'angle est programmable.
- Si l'on veut que le double sommateur pondérateur soit programmable, on va disposer à l'entrée de chaque amplificateur opérationnel non pas une capacité Co et une capacité C'o, mais une pluralité de capacités Co et de capacités C'o, ayant pour valeurs les cosinus et sinus d'angles 2kπ/N (valeurs prises en référence à la capacité de bouclage Ci supposée de valeur unitaire pour simplifier puisque seuls interviennent des rapports entre les capacités d'entrée Co, C'o et la capacité C1).
- Le choix d'un angle de rotation (déterminé par les éléments binaires du nombre k transmis par le séquenceur) se traduira par la mise en service d'une seule capacité Co et d'une seule capacité C'o parmi la pluralité de capacités prévues. Les autres capacités restent hors service.
- A cet effet, chaque capacité est en série avec un interrupteur de mise en service (transistors Tc pour les capacités Co représentant des cosinus d'angles 2kπ/N, et transistors Ts pour les capacités représentant des sinus des mêmes angles). Tous les ensembles Tc, Co sont en parallèle et remplacent la capacité Co de la figure 1; de même, tous les ensembles Ts, C'o sont en parallèle et remplacent la capacité C'o de la figure 1. La programmation consistera notamment à désigner un couple unique de capacités Co, C'o correspondant au cosinus et au sinus d'un même angle, ceci pour chaque amplificateur opérationnel, la désignation se faisant par mise en conduction des transistors Tc, Ts correspondant à ce couple, les autres transistors Tc, Ts restant bloqués. Un décodeur recevant le nombre k permettra de procéder à cette désignation pour un cycle de calcul donné, les capacités désignées s'insérant dans le circuit selon le schéma de la figure 1.
- Toutefois, pour obtenir une possibilité de programmation complète de k entre 0 et N-1, il faudrait 2N capacités à l'entrée de chacun des deux amplificateurs opérationnels, soit 4N en tout pour un module, c'est-à-dire 1024 pour n = 256.
- On conçoit qu'il n'est pas souhaitable de prévoir dans chaque module un nombre aussi élevé de capacités dont quatre seulement seront utilisées simultanément au cours d'un cycle de calcul. En effet, non seulement les capacités sont encombrantes dans un circuit intégré MOS, mais en plus la précision du rapport des capacités se dégrade lorsque ce rapport devient trop élevé alors que cette précision est fondamentale pour l'exécution du calcul; il faut donc non seulement essayer de réduire le nombre de capacités, mais aussi éviter d'avoir dans un même circuit des capacités de valeurs très différentes. Pour N = 256, le rapport entre la plus grosse capacité (correspondant à cos 2π = 1) et la plus petite (correspondant à sin 2π/ 256 = 0,0245) est nettement trop élevé pour qu'on ait, en technologie MOS, une précision suffisante sur ce rapport.
- Deux mesures sont adoptées selon l'invention pour réduire le nombre de capacités et éviter d'avoir des capacités très petites par rapport à l'unité représentée par la capacité de bouclage C1. La première mesure consiste à remarquer que si on dispose de capacités représentant les sinus et cosinus des angles entre 0 et π/4, on peut en déduire les sinus et cosinus de tous les autres angles du cercle trigonométrique, d'une part, par modification du signe du sinus ou du cosinus, en ramenant certains angles à un angle entre 0 et π/4 par complémentation à π ou 2π, ou par soustraction de π, et d'autre part, par remplacement d'un sinus en un cosinus et réciproquement en ramenant certains angles à un angle entre 0 et π/4 par complémentation à π/2 ou 3π/2 ou par soustraction de π/2 ou 3π/2.
- Or, justement, on a vu que l'on pouvait, avec un double sommateur-pondérateur réalisant des quantités (5) et (9), réaliser aussi des quantités (6), (7), (8), (10), (11), (12) qui ne différent des quantités (5) et (9) que par des changements de signes ou des permutations de sinus et cosinus.
- Si donc le sommateur-pondérateur reçoit un nombre k correspondant à un angle quelconque 2 kπ/N, on pourra transformer cet angle en un angle 2k'n/N compris entre 0 et π/4 avec une relation simple bien définie entre les cosinus et sinus des angles 2kπ/N et 2k'π/N. Cette relation simple permettra de définir quelles sont les quantités parmi (5) à (12) qui, exprimées en fonction de k', correspondent justement aux quantités (5) et (9) exprimées en fonction de k, à charge pour un circuit logique de commander le sommateur-pondérateur pour qu'il établisse les quantités ainsi définies.
- A chaque demi-quadrant du cercle trigonométrique on peut faire correspondre une transformation trigonométrique simple (changement de signe ou permutation de sinus ou cosinus) par laquelle on passe d'un angle 2kπ/N de ce demi-quadrant à un angle 2k'π/ N du premier demi-quadrant (0,π/4).
- A titre d'exemple, supposons que k est tel que 2kπ/N est compris entre 3n/4 et π (quatrième demi-quadrant); on détermine un angle 2k'π/N = π - 2kπ/N compris entre 0 et π/4. Les relations trigonométriques simples qui en découlent sont:
- sin 2k'π/N = sin 2kπ/N
- cos 2k'π/N = -cos 2kπ/N
- Il y a donc lieu de produire les quantités (7) et (10) exprimées en fonction de k':
- - (a0-a1) cos 2k'π/N - (b0-b1) sin 2k'n/N
- (a0-a1) sin 2k'π/N - (b0-b1) cos 2kπ/N pour que l'on obtienne bien les quantités (3) et (4) en remplaçant 2k'n/N par π-2kπ/N.
- De nombreuses possibilités existent pour établir alors les quantités (7) et (10), mais, si l'on s'en tient à la réalisation pratique décrite en détail, c'est-à-dire celle pour laquelle le premier amplificateur produit les quantités (5) (8) (11) (10) et le second les quantités (9) (12) (6) (7), et pour laquelle on prévoit des permutations de signaux d'entrée et de sortie ainsi que des inversions de phase entre Ta et T'a plutôt que des permutations complètes entre Ta, T'a, Tb, T'b, on devra alors effectuer:
- un changement de signe pour les deux amplificateurs opérationnels (donc simultanéité de phase de Ta, Tb, T1 au lieu de Ta, Tb, T1), qui revient à inverser les signes des quantités (5) à (9),
- une permutation des entrées ao et bo d'une part et une permutation des entrée a1 et b1 d'autre part, qui revient à permuter ao - ai et bo - b1 dans les quantités (5) à (9),
- enfin une permutation des sorties des amplificateurs opérationnels pour que se retrouve sur la première sortie du sommateur pondérateur la quantité (7) produite par le second amplificateur et sur la seconde sortie la quantité (10) produite par le premier.
-
- Cette dernière équation montre bien qu'à partir de la fonction standard du sommateur pondérateur capable de réaliser des quantités du type (5) et (9), il y a lieu, lorsqu'on est en présence d'un angle du quatrième demi-quadrant, de permuter les entrées et les sorties et de changer les signes des deux quantités établies.
- On peut ainsi établir, pour tous les demi-quadrants des formules de transromation analogues qui montrent clairement la transformation à effectuer. On aboutit aux transformations suivantes: demi-quadrant 0 (0, π/4)
- - pas de transformation
demi-quadrant 1 (π/4, π/2) - - changement de signe sur le premier amplificateur
- - permutation des entrées
demi-quadrant 2 (π/2, 3π/4) - - changement de signe sur le second amplifica
teur - - permutation des sorties
demi-quadrant 3 (3π/4, π) - - changement de signe sur les deux amplificateurs
- - permutation des entrées et des sorties
demi-quadrant 4 (π, 5π/4) - - changement de signe sur les deux amplificateurs
demi-quadrant 5 (5π/4, 3π/2) - - changement de signe sur le second amplificateur
- - permutation des entrées
demi-quadrant 6 (3π/2,7π/4) - - changement de signe sur le premier amplifica
teur - - permutation des sorties
demi-quadrant 7 (7π/4, 2π) - - permutation des entrées et des sorties
- Pour ces divers demi-quadrants, il y aura lieu de définir exactement la valeur de k':
- demi-quadrant 0 2k'π/N = 2kπ/N
- demi-quadrant 1 2k'π/N = π/2-2kπ/N
- demi-quadrant 2 2k'π/N = 2kπ/N-π/2
- demi-quadrant 3 2k'π/N =π-2kπ/N
- demi-quadrant 4 2k'π/N =2kπ/N-π
- demi-quadrant 5 2k'π/N = 3π/2-2kπ/N
- demi-quadrant 6 2k'π/N = 2kπ/N-3π/2
- demi-quadrant 7 2k'π/N = 2π-2kπ/N
- k sera exprimé sous forme d'un nombre binaire (reçu du séquenceur). Pour N = 256, k possède huit bits B7, B6, B5, B4, B3, B2, B1, BO dans l'orde des poids décroissants.
- Les trois premiers bits B7, B6, B5 constituent une adresse quadrantale désignant un demi-quadrant parmi huit dans lequel se trouve l'angle 2kπ/N. Les demi-quadrants numérotés 0 à 7 dans le sens trigonométrique ont pour adresses successives B7, B6, B5: 000, 001, ..., 111.
- Ces trois premiers bits définissent quels sont les changements de signe et permutations à effectuer selon le tableau donné ci-dessus.
- Ils définissent aussi de quelle manière on passe de k à k'.
- Ce passage est en fait extrêmement simple: si l'angle 2kπ/N est dans l'un des demi-quadrants pairs 0, 2, 4, 6, c'est-à-dire si B5 est égal à 0, les bits suivants B4, B3, B2, B1, B0 définissent exactement le nombre k'; ceci correspond au passage de 2kπ/N à 2k'π/N par soustraction de π/2 ou π ou 3π/2.
- Si, au contraire, l'angle 2kπ/N est dans l'un des demi-quadrants impairs (B5 = 1), le nombre k' est obtenu par inversion des bits B4 B3 B2 B1 BO et addition d'une unité au dernier bit.
- Cette opération logique est extrêmement simple et correspond au passage de l'angle 2kπ/N à l'angle 2k'πc/N par complémentation à π/2, π, 3π/2, ou 2π.
- Ainsi, selon la valeur de B5, on passe de k à k' en utilisant simplement les derniers bits de k ou en effectuant une inversion de ses derniers bits et une addition d'une unité:
- B5=0 0
- k' = B4 B3B2 B1 B0
- B5 = 1
- k' = B4 B3 B2 B1 BO + 00001
- C'est le nombre k' qui servira à désigner une capacité Co et une capactié C'o à l'entrée des amplificateurs opérationnels.
- k' possède cinq bits, mais un cas particulier peut se présenter: si B5 = 1 et B4 B3 B2 B1 B0 est égal à 00000, (2kn/N = π/4 ou 3n/4 ou 5n/4 ou 7π/4) k' devient un nombre à six bits 100000 lors de l'inversion et l'addition d'une unité. Si on supprime le sixième bit, k' devient 00000 correspondant à un angle 2k'n/N = 0 qui ne satisfait pas à la formule: 2k'π/N = n π/2-2kπ/N.
- Ce sixième bit est donc nécessaire pour définir un angle:
- 2k'π/N = π/4.
- Mais, pour éviter d'avoir à utiliser un bit de plus dans le calcul de k', bit qui ne serait utile que dans le cas d'une adresse quadrantale impaire suivie de cinq zéros, les circuits logiques de désignation des capacités Co et C'o comprendront un découdeur détectant l'égalité B5 B4 B3 B2 B1 BO = 100000 et permettront alors la désignation de capacités de valeurs sin n/4 et cos n/4.
- Tout ce qui vient d'être expliqué avait pour but de montrer en détail comment on peut utiliser des capacités correspondant aux sinus et cosinus d'angles compris entre 0 et π/4, une logique de commande exécutant les inversions et permutations nécessaires pour faire le calcul corresponant pour les angles des autres demi-quadrants. On s'aperçoit donc qu'un maximum de N/4 capacités est nécessaire à l'entrée de chacun de deux amplificateurs opérationnels pour établir les quantités (5) et (9) pour tous les anlges 2kn/N du cercle trigonométrique.
- Une deuxième mesure est prise pour réduire encore le nombre de capacités matérialiser dans le circuit intégré. Cette deuxième mesure consiste à ne conserver que les capacités correspondant aux angles multiples de π/32 (k' multiple de 4) et à effectuer un calcul par interpolation pour les valeurs intermédiaires de k', en utilisant les formules d'interpolation suivantes:
valables si dA est un petit angle, ce qui est les cas par exemple si dA = π/128 ou π/64. - Si on utilise ces formules dans les équations (3) et (4), on trouve que pour les angles à interpoler correspondant à:
- k' = 4 K' + 1 ou 4 K' - 1 ou 4 K' + 2,
- On expliquera plus loin comment on effectue les opérations (17) et (18) pour passer des valeurs approchées X1 et Y1 aux valeurs x1 et y1 précisées par interpolation.
- En tout cas on peut d'ores et déjà voir qu'on n'a plus besoin à l'entrée de chaque amplificateur opérationnel que de seize à dix-huit capacités qui représentent les sinus et cosinus des angles multiples de π/32 entre 0 et π/4. En fait, dix-sept capacités représentent le nombre le plus réaliste si on désire avoir à la fois l'angle 0 et l'angle π/4 et si on remarque que sin 0 = 0 correspond à une capacité nulle donc une absence de capacité. On a supprimé les très petites capacités correspondant par example à sin π/128, sin π/64, etc.
- La figure 2 représente le double sommateur-pondérateur selon l'invention, programmable en angle de rotation et fonctionnant comme cela a été expliqué ci-dessus.
- Il comprend un amplificateur A01 avec une capacité de bouclage C1 supposée unitaire commutée par trois tranistors T1, T2, T3, et un autre amplificateur A02 bouclé de la même manière par une capacité C2 également unitaire commutée par trois transistors T'1, T'2, T'3. Les montages de ces capacités et transistors sont ceux de la figure 1. Ces amplificateurs fournissent des valeurs correspondant aux équations matricielles (13) et (14) et reçoivent tous deux des signaux ao bo a1 b1 à travers deuc réseaux de capacités commutées RCC1 et RCC2 sont pratiquement identiques.
- Seul RCC1 a été représenté en détail avec ses dix-sept capacités ayant comme valeurs les cosinus et les sinus des angles multiples de π/32 entre 0 et π/4.
- Les entrées ao et a1 sont reliées par des transistors Ta et T'a, non pas directement à des capacités Co comme à la figure 1, mais à une borne d'un dispositif de permutation d'entrée Pe qui reçoit d'autre part sur une autre borne les signaux bo et b1 à travers les tranistors Tb et T'b.
- Les signaux reçus par le dispositif de permutation Pe sont transmis tels quels ou sont croisés selon l'état de ce dispositif qui est commandé par un détecteur D1 recevant le nombre k: pour cer- teines valeurs de k (en fait des trois bits de plus fort poids de k), il y aura permutation des entrées ao, a1 et bo, b1.
- Les sorties du dispositif de permutation Pe sont reliées l'une à une borne d'un ensemble comprenant en parallèle neuf capacités Co (et leurs interrupteurs individuels de mise en service Tc), ces capacités ayant pour valeur les cosinus d'angles multiples de π/32 entre 0 et π/4, l'autre à un ensemble comprenant en parallèle huit capacités C'o et leurs interrupteurs individuels de mise en service Ts, ces capacités ayant pour valeur les sinus de mêmes angles sauf sin 0 qui est nul.
- Les ensembles en parallèle sont par ailleurs reliés tous deux à l'entrée inverseuse de l'amplificateur A01.
- Le décodeur D1 définit soit un état dans lequel les signaux ao et a1 sont transmis aux capacités Co (cosinus) et les signaux bo et b1 aux capacités C'o (sinus), soit le contraire (ao et a1 aux capacités C'o et bo et b1 aux capacités C'o).
- Les transistors Ta, T'a, Tb, T'b sont commandés par un autre décodeur D2 qu'on peut appeler décodeur de changement de signe, car, pour certaines valeurs du nombre k qu'il reçoit, il permet de passer d'une quantité (5) à (12) à son inverse. Ce décodeur agit pour établir soit une simultanéité de phase de conduction de Ta et T'b avec T1 soit au contraire une simultanéité de phase de T'a et Tb avec T1.
- On notera que le réseau de capacités commutées RCC2 ne diffère du réseau RCC1 que par le fait que son décodeur de changement de signe agit pour établir soit une simultanéité de phase de Ta et Tb avec T1 soit au contraire une simultanéité de phase de T'a et T'b avec T1, et par le fait que les valeurs de k définissant ce choix sont différentes des valeurs de k définissant le choix correspondant pour le réseau RCC1.
- On notera aussi que le décodeur D1 de permutation d'entrée est commun aux deux réseaux et commande les dispositifs de permutation d'entrée Pe des deux réseaux dans des sens complémentaires de manière que si l'un des amplificateurs réalise une quantité prise parmi (5) à (8), l'autre réalise bien complémentairement une quantité prise parmi (9) à (12).
- Les dispositifs de permutation d'entrée Pe peuvent être réalisés chacun par quatre transitors MOS.
- A la sortie des amplificateurs opérationnels est prévu un autre dispositif de permutation Ps, commandé par un découdeur D3 recevant une information sur le nombre k (il ne reçoit en fait que le second bit B6 de k car il n'y a permutation des sorties que pour B6 = 1), pour permuter ou non les sorties des deux amplificateurs selon la valeur de k et fournir sur deux sorties du sommateur-pondérateur des quantités X1, Y1 qui sont des valeurs approchées des quantités x1 et y1 des équations (3) et (4) correspondant en fait aux valeurs de x1 et yi, pour des angles multiples de π/ 32.
- Enfin, on a représenté à la figure 2:
- un circuit logique de commande de commutation CL qui a pour fonction de commander la commutation des divers transistors Ta, T'a, Tb, T'b, T1, T2, T3 selon les règles expliquées en référence à la figure 1; et plus généralement, le circuit CL exécute d'autres fonctions de commutation nécessaires au cours d'un cycle de calcul comme on le verra plus loin;
- et un décodeur D4 qui reçoit le nombre k, qui le transforme en un nombre k' selon les règles expliquées (k' = (B4 B3 B2 B1 BO) B5 + (B4 B3 B2 B1 BO + 00001) B5), qui en prend les trois premiers bits (K') et qui commande la fermeture d'un interrupteur Tc et un interrupteur Ts de chaque réseau pour mettre en service dans chaque réseau une seule capacité Co et une seule capacité C'o, correspondant au cosinus et au sinus de l'angle multiple de π/32 le plus proche de 2k'π/N.
- En revenant au calcul de l'interpolation, les équations (17) et (18) qui en donnent les règles sont calculées de manière optimale en utilisant justement les amplificateurs opérationnels A01 et A02 de la figure 2 avec les réseaux de capacités qui leur sont associés.
- La figure 3 représente la constitution du circuit qui permet de faire cette interpolation après que le calcul de X1 et Y1 ait été effectué pour des angles multiples de π/32.
- Pour simplifier l'explication, on a représenté à nouveau, sur la figure 3, les amplificateurs A01 et A02, mais sans les réseaux de capacités RCC1 et RCC2. Toutefois la capacité d'entrée C'o de valeur sin n/32 (la plus petite) a été représentée car elle sera utilisée pour faire l'interpolation.
- En effet, l'interpolation par angles de π/128 consiste à réaliser les équations:
- x1 = X1 - Y1 π/128
- y1 = Y1 + X1 π/128
- que l'on peut approximer par:
- x1 = X1 -Y1 sin π/128
- y1 = Y1 + X1 sin π/128
- que l'on peut approximer aussi par:
- Ayant calclulé X1 et Y1 à partir de ao, bo, a1, bi, on stocke ces valeurs de tension dans deux capacités C3 et C4 qui constituent des mémoires des valeurs de X1 et Y1. Ces capacités sont les capacités de bouclage de deux amplificateurs opérationnels A03 et A04 qui d'ailleurs peuvent servir initialement à transmettre les valeurs a1 et b1 aux entrées du circuit de la figure 2. Des commutateurs (transistors MOS) sont prévus pour aiguiller soit les signaux a1 et b1, soit les signaux X1 et Y1 à l'entrée des amplificateurs A03 et A04.
- Les valeurs X1 et Y1 sont pour cela appliqués aux entrées des amplificateurs A03 et A04 par l'intermédiaire de capacités C'3 et C'4, dont le rapport aux capacités C3 et C4 est 1 et dont le rapport aux capacités Ci et C2 des amplificateurs A01 et A02 est aussi de préférence 1.
- Par une commutation des capacités d'entrée C'3 et C'4, similaire à celle décrite en référence à la figure 1, on transfère la valeur des tensions d'entrée X1 et Y1 vers la sortie des amplificateurs opérationnels A03 et A04 qui les gardent en mémoire grâce aux capacités de bouclage C3 et C4.
- Ces tensions mémorisées sont alors appliquées aux capacités de valeur sin π/32 à l'entrée des amplificateurs A01 et A02, par l'intermédiaire des transistors T'a ou T'b, des transistors T"a et T"b étant prévus en plus pour pouvoir mettre à la masse l'armature côté amont de ces capacités.
- Dans cette phase de calcul d'interpolation, les transistors T1, T2, T3 fonctionnent comme décrit en référence à la figure 1. Les transistors T'a et T"a ou T'b et T"b sont cummutés avec des phases de conduction disjointes correspondant respectivement à celles de T'1 et T'2 pour l'amplificateur A02 mais correspondant respecitvement à celles de T2 et T1 pour l'amplificateur A01 (afin de réaliser une inversion de signe).
- A la fin d'un cycle de commutation de ces transistors, on obtient une tension - Y1 sin π/32 sur la sortie qui initialement était à la tension X1 et une tension + X1 sin π/32 sur la sortie qui initalement était à Y1. X1 et Y1 sont toujours mémorisés sur les capacités C3 et C4.
- Les tensions de sortie des amplificateurs A01 et A02 sont à nouveau ranemées sur les entrées des amplificateurs A03 et A04 respectivement, mais cette fois à travers des capacités commutées C"3 et C"4 de valeur sensiblement égale à 0,25 (par rapport à C3 et C4).
- Comme les capacités C3 et C4 n'ont pas été déchargées, la commutation des capacités C"3 et C"4 aux entrées des amplificateurs A03 et A04 a pour effet d'augmenter les tensions aux bornes de C3 et C4 d'une valeur correspondant aux tensions appliquées à l'entrée multipliées par le rapport des capacités C"3/C3 ou C"4/C4 soit 0,25. Cette commutation se fait par charge de C"3 reliée à l'entrée de l'amplificateur A03 pendant que ce dernier est bouclé en gain unitaire et que C3 est isolée à la fois de la masse et de la sortie de l'amplificateur, puis par connection de la capacité C"3, isolée de la source qui l'a chargée, entre l'entrée de A03 et la masse, en même temps que C3 est rebouclée sur la sortie de A03.
- On obtient donc bien, en sortie des amplificateurs A03 et A04, des tensions finales:
- x1 = X1 - (Y1 sin π/32)/4
- et y1 = Y1 + (X1 sin π/32)/4
- Les commutations des différents transistors ont encore lieu sous la commande du circuit CL de la figure 2 qui établit les signaux d'aiguillage nécessaires pendant cette phase d'interpolation (par exemple aiguillage du signal X1 vers l'entrée de A03 à travers l'une ou l'autre des capacités d'entrée C'3 ou C"3, ou au contraire aiguillage du signal d'entrée a1 vers la capacité C'3 pour mettre en mémoire sur C3 le signal a1), et qui établit aussi les phases de conduction adéquates, tenant compte des signes arithmétiques des multiplications ou additions à effectuer, pour tous les transistors qui travaillent en commutation en série ou en parallèle avec des capacités.
- La remise à zéro de la charge des capacités C3 et C4 est nécessaire au début d'un cycle de calcul pour que ce soient bien les signaux a1 et b1 qui se présentent ensuite aux bornes de sortie des amplificateurs A03 et A04. Cette remise à zéro peut se faire par un agencement de commutateurs tels que T1, T2 et T3 à la figure 1, qui a l'avantage d'emmagasiner, en vue de la compenser, la tension d'offset de l'amplificateur opérationnel. De même, après que X1 et Y1 aient été calculés et avant de les stocker dans C3 et C4, il faut décharger C3 et C4 jusqu'à zéro ou jusqu'à la tension d'offset des amplificateurs. Au contraire, cette remise à zéro n'a pas lieu quand on ramène les tensions - Y1 sin π/32 et X1 sin π/32 à l'entrée des amplificateurs A03 et A04.
- Si l'interpolation doit consister à ajouter un angle π/64 et non π/128 on peut choisir soit de faire en sorte que les capacités C"3 et C"4 aient des valeurs 0,5 au lieu de 0,25 (par exemple avec deux capacités C"3 en parallèle), soit de faire deux fois de suite l'interpolation à π/128, c'est-à-dire de ramener encore une fois à l'entrée des capacités C"3 et C"4 les signaux déjà interpolés une première fois en sortie des amplificateurs A01 et A02.
Une interpolation plus précise qu'à π/128 (si N est supérieur à 256) peut se faire simplement en prévoyant par exemple des capacités C"3 et C"4 deux fois plus petites. - Une interpolation à - π/128 se fera en inversant les phases des transistors T'a et T"a ou T'b, T"b de commutation des deux capacités sin n/32.
Un décodeur D5 recevant le nombre k, ou plus simplement ses deux derniers bits, commande le choix de la mise en service d'une capacité C"3 ou C"4 lorsqu'il y a lieu de faire une interpolation. Il permet aussi l'inversion de phase des transistors T'a et T"a ou T'b, T"b s'il y a lieu. - On remarquera que ce système d'interpolation ne nécessite pas de capacités dans un trop petit rapport vis-à-vis de la capacité Ci de valeur unité puisque la plus petite capacité utilisée est la capacité de valeur sin π/32 = 0,0980.
- Finalement, alors que dans la phase initiale de calcul de X1 et Y1, les sorties des amplificateurs A03 et A04 fournissent les signaux a1 et b1 (qu'ils ont reçu sur leurs entrées et pris en mémoire), pour appliquer ces deux signaux aux deux amplificateurs A01 et A02, dans la phase d'interpolation, les sorties des amplificateurs A03 et A04 fournissent d'abord respectivement X1 et Y1 puis, s'il y a effectivement un calcul d'interpolation à faire, elles founissent x1 et y1.
- C'est donc sur les sorties des amplificateurs A03 et A04 que l'on retrouve finalement les signaux cherchés x1 et y1 des équations (3) et (4).
- Il reste donc à produire les signaux xo et yo qui sont respectivement les sommes ao + a1 et bo + b1.
- On va pour cela utiliser deuc amplificateurs supplémentaires A05 et A06 qui de toute façon serviront, comme les amplificateurs A03 et A04, dans une phase initiale, à mémoriser et fournir sur leur sortie, pour les appliquer aux amplificateurs A01 et A02, les signaux d'entrée ao et bo.
- En effet, cette disposition avec amplificateur formant mémoire d'entrée est particulièrement utile dans le cas où le module opérateur complexe établissant les quantités xo, yo, x1, y1 à partir de signaux ao, bo, a1, bi, est bouclé sur lui-même: il faut bien une mémoire pour conserver les échantillons de signaux d'entrée pendant tout le temps de la génération des signaux de sortie avant que les signaux de sortie soient à nouveau appliqués aux entrées et traités pour subir eux-mêmes les additions et pondérations.
- Par conséquent, le module opérateur complexe selon 'invention comprend encore deux autres amplificateurs A05 et A06 qui sont couplés au reste du circuit de la figure 3 de la manière représentée à la figure 4. Pour la simplification, on n'a pas représenté à la figure 4 tous les éléments couplés aux amplificateurs A01 et A02, dont le détail a déjà été expliqué.
- Il faut d'abord préciser que le calcul de ao + a1 et bo + b1 est effectué après le calcul de X1 et Y1, mais avant que X1 et Y1 ne soient transférés sur les amplificateurs A03 et A04.
- Les amplificateurs A05 et A06 sont montés selon un schéma qui se rapproche de celui de la figure 1, c'est-à-dire que l'amplificateur A05 possède une entrée non-inverseuse à la masse et une entrée inverseuse reliée à une capacité de bouclage C5 (C6 pour A06) et à deux capacités d'entrée C'5 et C"5 (C'6 et C"6); les capacités C'5 et C"5 sont par ailleurs chacune en série avec deux transistors (analogues à Ta, T'a, Tb, T'b); pour la capacité C'5 l'un de ces transistors est relié à une entrée de signal ao et l'autre à la masse; pour la capacité C"5, l'un des transistors est relié à la sortie de l'amplificateur A03 et l'autre à la masse; l'autre borne de la capacité de bouclage peut être mise à la masse par un transistor analogue à T1, ou reliée à la sortie de A05 par un transistor analogue à T2; un transistor analogue à T3 permet de boucler la sortie de l'amplificateur A05 directement sur son entrée inverseuse. Les capacités C'5 et C"5 ont la même valeur que C5 et de préférence la même valeur que Ci et C2.
- Le montage de l'amplificateur A06 est exactement la même avec une capacité C'6 qui reçoit bo et une capacité C"6 reliée à la sortie de A04.
- Ainsi, en choisissant de manière convenable les phases de commutation des divers transitors, en s'inspirant de ce qui a été décrit en référence aux figures précédentes, on peut, dans une première phase, appliquer tous les signaux d'entrée ao, bo, a1, b1, sur les capacités respectives C'5, C'6, C'3, C'4 en même temps que les capacités C5, C6, C3, C4 sont déchargées ou plus exactement prennent en mémoire la tension de décalage (offset) des amplificateurs respectifs.
- Pusi, dans une deuxième phase, ayant déconnecté les entrées ao, bo, a1, b1, mis à la masse les capacités C'5, C's, C'3, C'4, et bouclé les amplificateurs par les capacités C5, Cs, C3, C4 comme expliqué en référence à la figure 1, ces dernières capacités récupèrent la charge des premières de sorte qu'il apparaît en sortie des amplificateurs les tensions ao, bo, a1, b1 compte tenu du rapport unité qui exiyte entre les différentes capacités.
- Ces tensions servent ensuite au calcul de X1 et Y1, les amplificateurs A05, A06, A03, A04 servant de source de signaux ao, bo, ai, b1 pour le schéma de la figure 2. Pour cela deux phases de fonctionnement (troisième phase et quatrième phase) sont nécessaires; on se référera à la description des figures 1 et 2 pour le détail, mais, en gros, la troisième phase consiste à appliquer aux amplificateurs A01 et A02 une paire de signaux, par exemple ao et bo, mais ce peut être ao et b1 ou a1 et bo ou a1 et b1 selon l'amplificateur et selon la valeur de k reçue et décodée par le dispositif; en même temps les capacités Ci et C2 sont déchargées; la quatrième phase consiste à appliquer l'autre paire de signaux aux amplificateurs, à travers les mêmes capacités désignées par le décodage de k, pendant que les capacités C1, C2 sont bouclées entre la sortie et l'entrée de chaque amplificateur A01 et A02. Ceci termine le calcul de X1 et Y1, étant etendu que pendant ces troisième phases, les circuits logiques ayant reçu le nombre k ont procédé auch choix d'un signe (décodeur D2 sur la figure 2), au choix d'une permutation d'entrées (décodeur D1), au choix d'une permutation de sorties (décodeur D3), et à la mise en service de capacités Co, C'o représentant un cosinus et un sinus du même angle à l'entrée des amplificateurs A01 et A02. X1 et Y1 restent en mémoire en sortie de ces amplificateurs.
- La cinquième phase consiste à rendre conducteurs les transistors reliant les sorties des amplificateurs A03 et A04 (portant a1 et b1) respectivement aux capacités C"5 et C"6 en bouclant A05 et A06 en gain unitaire, et en isolant C5 et C6 à la fois de la sortie de ces amplificateurs et de la masse pour qu'elles concervent leurs charges.
- La sixième phase exécute l'addition de ao + a1 et bo + b1 : C5 et C6 sont reconnectées entre sortie et entrée des amplificateurs A05 et A06 dont le bouclage an gain unitaire est supprimé, et les bornes amont des capacités C"5 et C"6 sont mises à la masse et déconnectées des sorties des amplificateurs A03 et A04. Les charges stockées à la cinquième phase sur C"5 et C"6 sont ainsi transférées sur C5 et C6 et s'ajoutent à la charge déjà présente sur C5 et C6; les sorties des amplificateurs A05 et A06 passent à des potentiels:
- x0 = a0+ a1 et y0 = b0 + b1
- Toujours pendant la sixième phase, avant de stocker sur C3 et C4 les tensions X1 et Y1 présentes en sorties de A01 et A02 (après le dispositif de permutation Ps), on décharge les capacités C3 et C4.
- Pour cela, les sorties du dispositif de permutation Ps sont connectées aux capacités C'3 et C'4 respectivement en même temps que les capacités C3 et C4 sont mises à la masse et que les amplificateurs A03 et A04 sont bouclés en gain unitaire.
- La septième phase isole C'3 et C'4 des sorties de A01 et A02 tout en les reliant à la masse et en reconnectant les capacités c3 et C4 en bouclage entre l'entrée et la sortie des amplificateurs A03 et A04. Les charges stockées sur C'3 et C'4 pendant la sixième phase sont transférées sur C3 et C4 de sorte qu'il apparaît en sortie de A03 et A04 les tensions X1 et Y1.
- Toujours pendant la septième phase se prépare, s'il y a lieu, le calcul de l'interpolation: mise en service des capacités sin π/32 sur les amplificateurs opérationnels, sélection d'une capacité C"3 et C"4 de valeur 0,25 ou 0,50, inversion ou non des phases des transistors T'a, T"a, T'b, T"b, etc. Les capacités C1, C2 des amplificateurs A01 et A02 sont déchargées, T'b et T"a (ou le contraire) sont rendus conducteurs conformément au schéma de la figure 3 et les amplificateurs A01 et A02 sont bouclés en gain unitaire.
- Pendant la huitième phase, les deux autres transistors T"b et T'a (ou le contraire) sont rendus conducteurs en même temps que les capacités C1, C2 sont isolées de la masse et rebouclées sur les amplificateurs A01 et A02; les quantités -Y1 sin n/32 et X1 sin π/32 sont ainsi stockées en sorties de A01 et A02.
- Simultanément, ces tensions de sortie sont appliquées aux capacités C"3 et C"4 pendant que les amplificaterus A03 et A04 sont bouclés en gain unitaire et que les capacités C3 et C4 (chargées par X1 et Y1) sont isolées à la fois de la masse et des sorties des amplificateurs A03 et A04.
- La neuvième phase consiste à relier les bornes amont des capacités C"3 et C"4 sélectionnés à la masse en supprimant le gain unitaire des amplificateurs A03 et A04 et an rebouclant les capacités C3 et C4 entre l'entrée et la sortie de ces amplificateurs. Cette commutation assure le transfert d'une charge-(C"3/C3)Y1 sin π/32 sur la capacité C3, sans faire disparaître la charge C3X1 qui y était déjà. Cette neuvième phase termine donc le calcul de l'interpolation et les tensions présentes en sortie des amplificateurs A05, A06, A03, A04 sont respectivement les tensions cherchées xo, yo, x1, Y1 définies par les équations (1) à (4).
- Ces tensions peuvent alors être lues à travers des transistors d'isolation en sortie de chacun de ces amplificateurs.
- Dans le cas où le module opérateur complexe ainsi décrit est utilisé avec d'autres en parallèle selon un mode de recirculation comme cela a été expliqué au début de la description, ces sorties sont transmises aux entrées d'autres modulateurs (avec un certain brassage d'interconnexions): la première phase du cycle suivant consiste dans le prélèvement sur les capacités C'5, C'6, C'3, C'4 d'échantillons de nouveaux signaux d'entrée et de mise en mémoire de ces signaux sur C5, Cs, C3, C4, après quoi ces signaux peuvent disparaître ou être modifiés sans influer sur le déroulement de nouveau cycle de calcul. Il n'y a donc pas besoin, pour un fonctionnement avec recirculation, de mémoires tampons entre les modules puisque les amplificateurs A05, A06, A03, A04 jouent ce rôle.
- On a donc ainsi décrit un module opérateur complexe particulièrement performant et comportant un nombre extrêmement réduit d'amplificateurs opérationnels et un nombre limité de capacités représentant les cosinus et sinus des angles de rotation appliqués par le module opérateur, module spécialement adapté au calcul analogique de transfomées de Fourier discrètes.
angles qu'on écrira (8K'π/N + 2nπ/N), avec n = - 1 ou 1 ou 2, les équations (3) et (4) se ramènent aux deux équations d'interpolation suivantes:
respectivement pour assurer l'équilibre des charges sur les armatures de C5 et C6.
Claims (10)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR8118639 | 1981-10-02 | ||
| FR8118639A FR2514169B1 (fr) | 1981-10-02 | 1981-10-02 | Module operateur complexe destine notamment a la determination analogique de transformees rapides de fourier |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP0076738A1 EP0076738A1 (fr) | 1983-04-13 |
| EP0076738B1 true EP0076738B1 (fr) | 1986-01-08 |
Family
ID=9262709
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP19820401756 Expired EP0076738B1 (fr) | 1981-10-02 | 1982-09-28 | Module opérateur complexe destiné notamment à la détermination analogique de transformées rapides de Fourier |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0076738B1 (fr) |
| DE (1) | DE3268435D1 (fr) |
| FR (1) | FR2514169B1 (fr) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3518078A (en) * | 1966-11-14 | 1970-06-30 | Julius L Chazen | Portable auto preparator |
| US3581078A (en) * | 1967-11-24 | 1971-05-25 | Bell Telephone Labor Inc | Fast fourier analyzer |
| US3714566A (en) * | 1970-09-02 | 1973-01-30 | Bunker Ramo | Apparatus and methods for deriving in essentially real time continuous electrical representations of the fourier and inverse fourier transform |
-
1981
- 1981-10-02 FR FR8118639A patent/FR2514169B1/fr not_active Expired
-
1982
- 1982-09-28 DE DE8282401756T patent/DE3268435D1/de not_active Expired
- 1982-09-28 EP EP19820401756 patent/EP0076738B1/fr not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| DE3268435D1 (en) | 1986-02-20 |
| EP0076738A1 (fr) | 1983-04-13 |
| FR2514169A1 (fr) | 1983-04-08 |
| FR2514169B1 (fr) | 1985-12-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3660849B1 (fr) | Circuit mémoire adapté à mettre en oeuvre des opérations de calcul | |
| EP0204603B1 (fr) | Circuit de calcul rapide de la transformée en cosinus, directe ou inverse, d'un signal discret | |
| EP0198729B1 (fr) | Système de simulation d'un circuit électronique | |
| EP0377388A1 (fr) | Générateur de forme d'onde de signal analogique | |
| FR2697704A1 (fr) | Procédé et dispositif de segmentation en sous-bandes et de reconstruction d'un signal numérique, et dispositif correspondant. | |
| EP0298002B1 (fr) | Mémoire de transposition pour circuit de traitement de données | |
| EP0511095A1 (fr) | Procédé et dispositif de codage-décodage d'un signal numérique | |
| EP0568146B1 (fr) | Processeur neuronal muni de moyens pour normaliser des données | |
| EP0022513B1 (fr) | Appareil de calcul de transformée de Fourier discrète bidimensionnelle | |
| FR2568036A1 (fr) | Circuit de calcul | |
| EP0536062B1 (fr) | Procédé et circuit de traitement de données par transformée cosinus | |
| FR2656124A1 (fr) | Multiplieur serie programmable. | |
| FR2800940A1 (fr) | Circuit pour signaux mixtes avec multiplexage de donnees | |
| EP0076738A1 (fr) | Module opérateur complexe destiné notamment à la détermination analogique de transformées rapides de Fourier | |
| FR2665969A1 (fr) | Reseau neural a couches multiples et son procede de conception. | |
| EP0924626A1 (fr) | Processeur de calcul d'une transformation rapide de Fourier à architecture dite "pipelinée" | |
| FR2518848A1 (fr) | Systeme amplificateur comprenant un circuit de compensation de decalage | |
| FR2834362A1 (fr) | Dispositif de transformation inverse adaptatif | |
| EP0585434B1 (fr) | Procede et dispositif de filtrage pour la reduction des preechos d'un signal audio-numerique | |
| EP0254628B1 (fr) | Circuit de traitement numérique de signal réalisant une transformation cosinus | |
| FR2545629A1 (fr) | Dispositif de calcul pour transformation de fourier rapide | |
| EP0308287B1 (fr) | Cellule biquadratique à capacités commutées sans boucle continue de contre-réaction et à faible sensibilité par rapport au gain des amplificateurs opérationnels et au ratio des capacités | |
| EP0674444A1 (fr) | Filtre de matrices de pixels | |
| Vetterli | Analyse, synthèse et complexité de calcul de bancs de filtres numériques | |
| EP0902359B1 (fr) | Procédé et dispositif de production d'une division entière avec un coprocesseur d'arithmétique modulaire |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| AK | Designated contracting states |
Designated state(s): DE FR GB IT NL |
|
| 17P | Request for examination filed |
Effective date: 19830420 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| AK | Designated contracting states |
Designated state(s): DE FR GB IT NL |
|
| ITF | It: translation for a ep patent filed | ||
| REF | Corresponds to: |
Ref document number: 3268435 Country of ref document: DE Date of ref document: 19860220 |
|
| PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
| 26N | No opposition filed | ||
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Effective date: 19870401 |
|
| NLV4 | Nl: lapsed or anulled due to non-payment of the annual fee | ||
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 19870527 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Effective date: 19870602 |
|
| GBPC | Gb: european patent ceased through non-payment of renewal fee | ||
| REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Effective date: 19881121 |



