EP0410870A1 - Dispositif d'analyse spectrale d'un signal numérique - Google Patents
Dispositif d'analyse spectrale d'un signal numérique Download PDFInfo
- Publication number
- EP0410870A1 EP0410870A1 EP90402126A EP90402126A EP0410870A1 EP 0410870 A1 EP0410870 A1 EP 0410870A1 EP 90402126 A EP90402126 A EP 90402126A EP 90402126 A EP90402126 A EP 90402126A EP 0410870 A1 EP0410870 A1 EP 0410870A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- register
- circuit
- analysis device
- time
- spectral analysis
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S13/00—Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
- G01S13/02—Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
- G01S13/06—Systems determining position data of a target
- G01S13/08—Systems for measuring distance only
- G01S13/32—Systems for measuring distance only using transmission of continuous waves, whether amplitude-, frequency-, or phase-modulated, or unmodulated
- G01S13/34—Systems for measuring distance only using transmission of continuous waves, whether amplitude-, frequency-, or phase-modulated, or unmodulated using transmission of continuous, frequency-modulated waves while heterodyning the received signal, or a signal derived therefrom, with a locally-generated signal related to the contemporaneously transmitted signal
Definitions
- the present invention relates to a device for spectral analysis of a digital signal.
- a targeted application is that of the analysis of a digital signal produced by a radio altimeter with linear frequency modulation.
- the description of such a radio altimeter can be found in French patent application No. 2,600,778.
- the present invention provides a device of this kind which, for its part, solves this double problem and is therefore well suited to the envisaged application.
- such a spectral analysis device is remarkable in that it comprises control accesses for receiving information of analysis method intended to control at least one analysis circuit.
- the idea of the invention is based on the fact that the spectral analysis must be carried out according to the method which is best suited to the circumstances.
- a spectral analysis device is remarkable, according to a characteristic of the invention, in that one of the methods used is the discrete Fourier transform, another involves the gradient method and a third the Levinson method.
- the discrete Fourier transform method is used to roughly analyze the spectrum and if the spectrum analyzed suggests a high altitude, the method involving the method of Levinson is used and if the altitude is low, it is the method involving the gradient method.
- Figure 1 shows the spectral analysis device according to the invention.
- input terminal 1 it receives in digital form the samples X (n) (where n indicates the instant of appearance) of a signal for which it is proposed to perform the spectral analysis.
- This signal is stored in a register 2 under the control of an EDB signal applied to terminal 3.
- the spectral components appear in digital form, also, at terminal 4.
- the device includes ports 5 for receiving information on the analysis method intended to control the analysis circuits 6 and 7.
- Levinson's and gradient methods provide the coefficients a (k) of a predictor polynomial which determines a predicted sample XP (n) based on the actual samples received previously; where M defines the order of modeling.
- NN represents the length, or horizon of accumulation.
- the parameters defining these operations in particular the values M, PR, NBR, NH, L are transmitted to access 5 in the following manner.
- Access 5 is broken down into a data line 10 and an address line 13.
- the address line connected to a circuit of parameter registers 15 makes it possible to select one of the registers 21, 22, 23, 24, 25 and 26 contained in this circuit 15 so that the data present on line 10 is recorded there.
- the registers 21 and 22 are intended to contain the information governing the execution of the gradient and Levinson method, that is to say, inter alia, the forgetting parameter L and the modeling order M.
- the registers 23 to 26 contain information concerning the operation of the analysis circuit 7, in particular the parameters PR, NBR ...
- the analysis device also includes a dating clock 30 used to supply a date to events, a clock coupled to a dating register 31 for storing remarkable dates.
- An output circuit 35 makes it possible to direct on output 4, in addition to the spectrum components, the value of autocorrelation coefficient R (0) often useful for regulating the level of amplification of a reception chain, the content of the register 31 and the date produced by the clock 30, plus a value of a status defining the state in which the device.
- Different three-state amplifiers 38 and 39 allow a single common line 40 to transmit, on the access 4f, the output information of the circuit 35 and the input information for the circuit 15.
- the amplifier 39 is switched on. state passing through a signal RWB external to the circuit and put in the active state to signal that an information must be recorded in the circuit 15.
- the amplifier 38 is put in the state passing by a signal TS emanating from the circuit 15 in response to requests from the outside applied to the access 5.
- a clock clock 42 controlled from the outside supplies signals H to fix the rate of operation of the whole device.
- Different signals are applied to the device of the invention: - the INI signal to initialize the whole device, - signal RZ1 to initialize circuit 6, - signal RZ2 to initialize circuit 7, - the INHB signal to allow certain operations as will be indicated below.
- It essentially consists of a sequential circuit 50 and a calculation circuit 51.
- This sequential circuit provides different signals for the calculation circuit 51 to execute the various tasks assigned to it.
- the calculation circuit 51 processes the digital samples which are applied to its input terminal 55 and it supplies its outputs 57 and 58 with the coefficients a (p) and the correlation coefficient R (0).
- the analysis of the words MOT1 and MOT2 contained respectively in the registers 21 and 22 allows the sequential circuit 50 to control the calculation circuit so that the Levinson or gradient method is executed.
- the calculation circuit is formed by a set of memories 61, 62 and 63, a multiplier 65 and an arithmetic and logical unit 67, a set of registers 70, 71, 72, 73, 74 and 75 which authorize operation in a "pipeline", a set of multiplexers 79, 80, 81, 82 and 83 to allow the routing of information to the various constituent elements of the circuit 51, a shift member 85 and a division assistance circuit 87 cooperating with the unit 67.
- These various elements are connected in the following manner.
- the output of the multiplexer 79 provided with two inputs is connected to the data input of the memory 61 one of its inputs constitutes the input 55, the other input is connected to the output of the register 75 which constitutes the output 57
- the output of the register 75 is also connected to the inputs of the memories 62 and 63.
- the registers 70 and 71 are intended to contain the operands for the multiplication to be carried out by the multiplication unit 65.
- the multiplexers 80 and 81 to four inputs corresponding to multiplexing positions allow the storage of these operands.
- the register 70 In a multiplexing position of the multiplexer 80, the register 70 is looped back on itself, in a second position the register 70 is connected with the circuit 87, in a third position it is connected with the data output of the memory 61 and in a fourth position with the data output from the memory 63.
- the multiplexing positions of the multiplexer 81 they relate the register 71 to the data output of the memory 61 for a first position, with the output data memory 62 for a second position, with the output of the unit 67, via the shift member 85 for a third position and with itself for the fourth position.
- the multiplexer 82 has five positions and it relates the register 72, which is an operand register for the unit 67, with itself for a first position, with the output of the register 74 connected at the output of the unit 67 for a second position, with the output of the multiplier 65 for a third, with the data output of the memory 63 for a fourth and with the output of the member 85 for the last or fifth.
- the multiplexer 83 has four positions and relates the register 73, which is a register for the other operand of the unit 67 with the data output of the memory 61 for a first position, with the data output of the memory 63 for a second position, with the register 76 whose input is connected to the output of the shift member 85 for a third position and with this output of the member 85 for a fourth position.
- the sequential circuit 50 provides different signals SX1, SMA, SMB and SAA for the switching to be caused inside the multiplexers 79, 80, 81, 82 and 83 respectively.
- OPAL command codes for the unit 67 can be accompanied by SHAL shift codes acting on the operand contained in the register 72.
- This sequential circuit 50 also provides read and write address codes for the memories 61 , 62 and 63.
- ADX1W and ADX1R be the codes for write and read addressing of memory 61, the codes ADX2W and ADX2R for memory 62 and the codes ADRW and ADRR for memory 63.
- These address codes write and read are applied to addressing multiplexers 91, 92 and 93 which provide the addressing codes ADX1, ADX2 and ADR for memories 61 to 63.
- the switching commands inside the multiplexers 91 to 93 are systematically carried out at the rate of the signal H.
- a first half-period of this signal is assigned to the writing therefore, the codes ADX1, ADX2 and ADRR are the codes ADX1W, ADX2W and ADRW.
- an entry may take place if the write signal WX1, WX2 and WR applied to memories 61, 62 and 63 is active.
- FIG. 4 is a time diagram and to FIG. 5 which shows the installation in the memories 61 and 63 of the different values as a function of the address codes.
- the number of address codes has been limited to 5, but the generalization to "p" codes will be done easily.
- each cycle is divided into two parts. During the first part, writings can take place in the different memories and the second part is devoted to reading.
- FIG. 5 shows the layout of the previous samples X4, X3, ..., X0 in the memory 61 stored respectively at the addresses "0", "1” ..., "4".
- the read and write address code of the memory 61 is "4"
- the sample X5 is written in this memory then is read and finally is recorded in the two operand registers 70 and 71 of the multiplier 65 at time t1 so that the product X5.X5 is found in register 72 at time t2, just as the coefficient R (0) is found in register 73, this read address code from memory at the previous time being "0".
- the sum X5.X5 + R (0) is found in register 75 at time t3 and concerns the write code of memory 62, "0"; the correlation coefficient R (0) is therefore updated by the contribution of X5.X5.
- the updating of the coefficient R (1) begins at time t1 when the sample X4 is read and is found at time t2 in the register 71 and, as the register 70 always contains the sample X5, the product X5.X4 is formed at time t3 in register 72.
- the coefficient R (1) is found in register 73 to be added there with the content of register 72, the coefficient R (1) is re-registered in memory 63 at time t4.
- the various remaining coefficients R (2), R (3) and R (4) will be updated by the contribution of sample X5.
- the process ends at time t7. At time t8 a new sample X6 appears. Processing is then carried out in the same way as for sample X5. Note however the offset of the write and read address codes of the memory 61.
- the autocorrelation process stops as soon as the programmed horizon is reached. Levinson's method is then performed.
- FIG. 6 is a time diagram which represents this initialization phase ⁇ ILC.
- the addressing order codes ADRX1 (R) and ADRX2 (R) will change between the values "0" and "M-1", the value M being contained in register 21.
- K R (1) / R (0) in general
- K V / W
- This division involves the aid unit for the division 87 which is a shift register which contains the result of this division by storing progressively the binary elements constituting this result.
- This division begins at time t15.
- the dividend is contained in register 72 in which the value R (1) has already been recorded at time t13 and the divisor is contained in register 73 which contains the value R (0) since time t12.
- the comparison of the contents of registers 72 and 73 gives the value of a binary element of the quotient, and the content of register 72 is imputed, in absolute value, by the value of the divider which remains identical to itself during the whole process but the content of register 72 is multiplied by 2.
- the OPAL code is -A + B or -AB depending on the sign of the dividend and the divisor of of the dividend and the divisor so that the quantity -K is actually calculated.
- This value is found at time t16 after the division process which lasted 16 clock cycles corresponding to 16 bits, for example.
- This phase involves M times the successive execution of three elementary phases the phase: ⁇ DIV already mentioned, the phase ⁇ ACL which modifies the coefficients, the phase ⁇ WL inserted in the phase ⁇ ACL and intended to modify a parameter W and the phase ⁇ KL which modifies the value of the coefficients for the next ⁇ ACL phase.
- the value a (0) remains equal to "1" during the entire execution of the Levinson method.
- the operation (A1) is executed.
- This product is added with the coefficient a (2) at time t20 so that the operation (A2) is executed and the new coefficient a (2) is stored in memory 61 at time t21.
- the operations (A3), (A4) are executed so that the coefficients a (3) and a (4) are stored in the memory 62 at times t23 and t25.
- This phase begins at time t24 when the code ADRX2 (R) is the code "0" and since the code ADRR (R) was already equal to 2, the values R (2) and a2 (0) can be set to time t25 in registers 70 and 71.
- the product PR (0) of these values is at time t26 in register 72 then at time t27 in register 73 passing through unit 67.
- the product PR (1) which is the product of R (1) by a2 (1) is in register 72 so that the sum can be carried out, the result SO1 is then set, at time t29 , in register 73 which will thus act as an accumulator.
- the successive products PR (2), PR (3) and PR (4) equal respectively to R (0) .a2 (2), R (5) .a2 (3), and R (4) .a2 (4) will be found successively at times t28, t29 and t30 in the register 72 and accumulate in the register 73 and the final result stored at t31 in the register 71 and in the register 72.
- R (0) (1-L) R0 + X2 (n)
- the value L comes from register 21.
- R (0) (1-L) R0 + X2 (n)
- the value L comes from register 21.
- the previous value R (0), contained in the register 74 is put in the register 72.
- the operation code applied to the unit 67 is an operand shift code "As4" to divide the operand contained in the register A by a multiple of two, which amounts to shifting it by a quantity dependent on "L". This shifted code is found at time t51 in register 73. In register 72, there is always the previous value R (0).
- the sample X (n) is recorded in the memory 61 at the address "5" and thus takes the place of the oldest sample (in FIG. 11, the sample X (n- 6)) and is returned at time t51 to be stored in registers 70 and 71.
- the product X2 (n) is then executed.
- This phase starts with the calculations already started during the ⁇ RG phase.
- the read address codes ADRX1 (R) and ADRX2 (R) were "5" and "0" respectively, which allows the values X (n) and a (0) to be found in the entry registers 70 and 71 of the multiplication at time t52 so that at time t53 the first element of the sum indicated in the last formula is in register 72 at time t53 and at time t54 this result is found in register 73 which will serve as an accumulator.
- a ′ (0) 1 (B2)
- phase ⁇ CG can be superimposed a waiting phase for the next sample X (n + 1).
- this sample arises at time t66.
- This sample is saved at address "4" of the memory, the processing is carried out as above but all the address codes are incremented by one and so on for the other samples that occur.
- This circuit essentially consists of a sequential circuit 100 and a calculation circuit 101.
- the sequential circuit 100 provides different control signals so that the calculation circuit 101 performs the various tasks assigned to it according to the information contained in registers 23, 24, 25 and 26 themselves contained in the parameter register circuit 15 ( Figure 1).
- the analysis circuit is provided with two inputs 102 and 103 to be able to process either the samples to perform a discrete Fourier transform, or the coefficients of the predictor in order to restore the spectral components.
- the samples and the coefficients are recorded in a memory 105 while passing through a multiplexer 107.
- a multiplier 110 for making the product of the numbers contained in the "pipeline" registers 112 and 113. These registers are connected at output from memory 105 and from memory 115 providing cosine and sine values, as will be explained in the remainder of this description.
- An arithmetic and logic unit 120 performs different operations according to an operation code 0PA2.
- the operand registers 122 and 123 are connected respectively to the outputs of multiplexers 124 and 125.
- the multiplexer 124 is provided with two inputs; Moon receives an initialization code to initialize the contents of register 122 and the other is connected to the output of unit 120 by means of a multiplication member 130 which may or may not double the output code of l 'unit 120.
- the multiplexer 125 is provided with 3 inputs, the first is connected to the output of the member 110 and the second and third to shift members 132 and 133, respectively. These shifting members shift or not by 8 bits to the right the numbers contained in registers 136 and 137.
- a register 140 which is of the shift register type, stores the value of the most significant binary element of the code at the output of the unit 120.
- the parallel outputs of this register are connected to the data inputs of a memory 145 via a multiplexer 174 with two inputs which also makes it possible to relate the output of the unit 120 to the memory 145.
- the spectrum components are made available at the output 150 of the memory 145, which in fact constitutes the output of the circuit 7.
- the memories 105 and 145 are addressed in the same way as the memories 61, 63 by means of an address code ADM and ADSP.
- the memory 115 which is a read-only memory is addressed by the ADCS code.
- the signals SI2, SA2, SB2 and SS2 position the multiplexers 107, 124, 125 and 147.
- the signal M2 applied to the member 130 to authorize or not a multiplication by two of the signals D8 and D8 ′ forces the members 132 and 133 to divide by 8 or not by performing an offset corresponding to this division.
- the code OPA2 controls the operations to be carried out by the unit 120.
- the circuit 100 develops these different signals and codes ADM, ADCS, ADSP, SA2, SB2, OPA2, SS2, D8, D8 ′, M2 and SI2 in accordance with the operation of this circuit 7 explained above.
- the different samples have been previously stored in memory 105.
- the calculation of the component SR (k) begins at time t100 (see FIG. 15). At each clock tick, the samples X (0), X (1), ..., X (N-1) will come to occupy the register 112 and simultaneously the different values of cos: 1, cos2 ⁇ k / N, .. ., cos2 ⁇ k N-1 / N, will occupy register 113 so that the product indicated by formula (D1) can be produced.
- the result of the product is stored at each clock stroke in the register 123.
- the register 122 serves as an accumulator and is set to zero (INIT) beforehand. When the calculation of SR (k) is finished, the result is put in register 136 (t107).
- the instant t107 also marks the start of the calculation of SI (k) which is carried out in the same way as SR (k) but starting with the sample X (1) and the sine values as given by the formula (D2).
- the result is set at time t111 in register 137.
- the result of this comparison is sent to the sequencing circuit 100 so that the contents of the registers 136 and 137 can be judiciously sent to the registers 123 and 122.
- the value MIN which is contained in one of the registers 136 and 137 is put in register 123; this value is divided by the unit 120, the result is set at the instant t116 in the register 122 while the MAX value is put in the register 122 which will serve as an accumulator to successively accumulate the MAX value at the instant t117 and the MIN / 8 value at time t118 obtained by one of the shifters 132 and 133; depending on whether the MIN value is contained in register 136 and 137 at time t118 the spectral component can be recorded in memory 145.
- An appropriate code is applied to access 5 on line 13; this code acts by the output multiplexer 35 to connect the access 4 either with the dating clock 30 for a certain datum transmitted on the line 10, or with the dating register for another datum.
- the relatively reduced number of accesses allows the device of the invention to be produced in a single chip.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Abstract
Ce dispositif est composé de deux blocs (6) et (7), le premier calcule les coefficients d'un prédicteur soit par la méthode de Levinson soit par la méthode du gradient. Le second calcule le spectre soit à partir des coefficients du prédicteur soit en effectuant une transformée de Fourier sur les échantillons X(n).
Description
- La présente invention concerne un dispositif d'analyse spectrale d'un signal numérique.
- Le brevet des Etats-Unis d'Amérique n° 4 787 055 décrit un tel dispositif qui utilise la méthode connue sous le nom de "Transformée de Fourier Discrète". Par cette méthode on peut détermminer un spectre sur une large gamme de fréquence. Cependant si l'on veut une analyse précise de ce spectre, on est amené à prévoir des temps de calculs qui croissent avec la précision demandée ; les temps de calculs peuvent alors devenir rédhibitoires pour certaines applications où l'on cherche à obtenir une large gamme de fréquence et une analyse fine du spectre.
- Une application visée est celle de l'analyse d'un signal numérique élaboré par un radioaltimètre à modulation linéaire de fréquence. On trouvera dans la demande de brevet français n° 2 600 778 la description d'un tel radioaltimètre.
- Dans ce genre d'application on est confronté à un premier problème qui est celui de la grande variation d'altitude à mesurer allant de quelques mètres à quelques kilomètres et à un deuxième problème qui est celui de la rapidité de la mesure à fournir, compte tenu de la vitesse de l'aéronef dans lequel est placé le radioaltimètre. En outre les mesures doivent être données avec une précision compatible avec la sécurité à assurer, surtout en phase d'atterrissage.
- Le dispositif précité ne peut pas résoudre ce double problème.
- La présente invention propose un dispositif de ce genre qui, lui, résout ce double problème et est donc bien adapté à l'application envisagée.
- Pour cela, un tel dispositif d'analyse spectrale est remarquable en ce qu'il comporte des accès de commande pour recevoir une information de méthode d'analyse destinée à commander au moins un circuit d'analyse.
- L'idée de l'invention repose sur le fait que l'analyse spectrale doit être effectuée selon la méthode qui est la mieux adaptée aux circonstances.
- Un dispositif d'analyse spectrale est remarquable, selon une caractéristique de l'invention, en ce que l'une des méthodes utilisées est la transformée de Fourier discrète, une autre implique la méthode du gradient et une troisième la méthode de Levinson. Ainsi, dans le cas de l'application envisagée à la mise en route du radioaltimètre la méthode de transformée de Fourier discrète est mise en oeuvre pour analyser grossièrement le spectre et si le spectre analysé laisse supposer une altitude élevée, la méthode impliquant la méthode de Levinson est utilisée et si l'altitude est basse, c'est la méthode impliquant la méthode du gradient.
- La description suivante, accompagnée des dessins ci-annexés, le tout donné à titre d'exemple non limitatif, fera bien comprendre comment l'invention peut être réalisée.
- La figure 1 représente le schéma d'un dispositif conforme à l'invention.
- La figure 2 montre le schéma d'un premier circuit d'analyse faisant partie du dispositif montré à la figure 1.
- La figure 3 montre la constitution des mots de commande du premier circuit d'analyse.
- La figure 4 est un diagramme-temps destiné à l'explication de la formation des coefficients de corrélation.
- La figure 5 représente l'implémentation des mémoires d'un circuit 6.
- La figure 6 est un diagramme-temps destiné à l'explication de la méthode de Levinson.
- La figure 7 représente l'implantation des mémoires de circuit 6 lors de la mise en oeuvre de la méthode de Levinson.
- La figure 8 est un diagramme-temps relatif à la méthode de Levinson.
- La figure 9 est aussi un diagramme-temps relatif à la méthode de Levinson.
- La figure 10 est un diagramme-temps destiné à expliquer le fonctionnement pour la méthode du gradient.
- La figure 11 représente l'implantation des mémoires pour la méthode de gradient.
- La figure 12 représente un diagramme-temps pour expliquer le déclenchement effectif de la méthode du gradient.
- La figure 13 représente la structure du deuxième circuit d'analyse.
- La figure 14 représente les mots de commande utilisés pour ce deuxième circuit d'analyse.
- La figure 15 est un diagramme-temps pour l'explication de la transformée de Fourier discrète.
- La figure 16 est un diagramme-temps pour expliquer les opérations effectuées sur les coefficients d'un prédicteur.
- La figure 1 représente le dispositif d'analyse spectrale conforme à l'invention. A la borne d'entrée 1 il reçoit sous forme numérique les échantillons X(n) (où n indique l'instant d'apparition) d'un signal dont on se propose de faire l'analyse spectrale. Ce signal est emmagasiné dans un registre 2 sous la commande d'un signal EDB appliqué à la borne 3. Les composantes spectrales apparaissent sous forme numérique, aussi, à la borne 4.
- Conformément à l'invention le dispositif comporte des accès 5 pour recevoir une information de méthode d'analyse destinée à commander les circuits d'analyse 6 et 7.
- Dans l'exemple décrit, trois méthodes sont envisagées, mais ceci ne limite en rien l'invention.
- Ces méthodes envisagées sont :
La méthode de la transformée de Fourier discrète exécutée uniquement par le circuit 7,
Les méthodes du gradient et de Levinson qui, exécutées par le circuit 6, fournissent les coefficients d'un prédicteur au circuit d'analyse 7. Ce circuit 7 établit finalement les composantes spectrales. -
-
-
- On notera aussi que la méthode de Levinson fait intervenir les coefficients de corrélation de la suite d'échantillons X(n) ;
et NN représente la longueur, ou horizon d'accumulation. On fait aussi intervenir un paramètre d'oubli L dans la méthode du gradient pour un ajustement du coefficient d'autocorrélation R(0) à chaque échantillon X(n) :
R(0) = (1-L).R(o) + X(n)² (9)
on a 0≦(1-L)≦1 - Les paramètres définissant ces opérations, notamment les valeurs M, PR, NBR, NH, L sont transmis à l'accès 5 de la manière suivante.
- L'accès 5 se décompose en une ligne de données 10 et une ligne d'adressage 13. La ligne d'adressage reliée à un circuit de registres de paramètres 15 permet de sélectionner un des registres 21, 22, 23, 24, 25 et 26 contenu dans ce circuit 15 de sorte que les données présentes sur la ligne 10 y soient enregistrées.
- Les registres 21 et 22 sont destinés à contenir les informations régissant l'exécution de la méthode du gradient et de Levinson c'est-à-dire, entre autres, le paramètre d'oubli L et l'ordre de modélisation M.
- Les registres 23 à 26 contiennent des informations concernant le fonctionnement du circuit d'analyse 7, notamment les paramètres PR, NBR...
- Ceci sera expliqué plus en détail dans la suite du présent mémoire.
- Le dispositif d'analyse comporte également une horloge de datation 30 servant à fournir une date à des événements, horloge couplée à un registre de datation 31 pour emmagasiner des dates remarquables.
- Un circuit de sortie 35 permet d'aiguiller sur la sortie 4, outre les composantes de spectre, la valeur de coefficient d'autocorrélation R(0) souvent utile pour réguler le niveau d'amplification d'une chaîne réception, le contenu du registre 31 et la date élaborée par l'horloge 30, plus une valeur d'un statut définissant l'état dans lequel se trouve le dispositif. Différents amplificateurs à trois états 38 et 39 permettent à une seule ligne commune 40 de transmettre, sur l'acès 4f les informations de sortie du circuit 35 et les informations d'entrée pour le circuit 15. L'amplificateur 39 est mis à l'état passant par un signal RWB extérieur au circuit et mis à l'état actif pour signaler qu'une information doit être enregistrée dans le circuit 15. L'amplificateur 38 est mis à l'état passant par un signal TS émanant du circuit 15 en réponse à des demandes de l'extérieur appliquées à l'accès 5. Une horloge de cadencement 42 pilotée à partir de l'extérieur fournit des signaux H pour fixer la cadence de fonctionnement de tout le dispositif.
- Différents signaux sont appliqués au dispositif de l'invention :
- le signal INI pour initialiser tout le dispositif,
- le signal RZ1 pour initialiser le circuit 6,
- le signal RZ2 pour initialiser le circuit 7,
- le signal INHB pour permettre certaines opérations comme cela sera indiqué plus loin. - On décrit dans ce qui suit, plus en détail, la structure et le fonctionnement du dispositif d'analyse spectrale de l'invention.
- Il se compose essentiellement d'un circuit séquentiel 50 et d'un circuit de calcul 51.
- Ce circuit séquentiel fournit différents signaux pour que le circuit de calcul 51 exécute les différentes tâches qui lui sont affectées.
- Le circuit de calcul 51 traite les échantillons numériques qui sont appliqués à sa borne d'entrée 55 et il fournit à ses sorties 57 et 58 les coefficients a(p) et le coefficient de corrélation R(0). L'analyse des mots MOT1 et MOT2 contenus respectivement dans les registres 21 et 22 permet au circuit séquentiel 50 de piloter le circuit de calcul pour que la méthode de Levinson ou du gradient soit exécutée. Le circuit de calcul est formé d'un ensemble de mémoires 61, 62 et 63, d'un organe de multiplication 65 et d'une unité arithmétique et logique 67, d'un ensemble de registres 70, 71, 72, 73, 74 et 75 qui autorisent un fonctionnement en "pipe-line", d'un ensemble de multiplexeurs 79, 80, 81, 82 et 83 pour permettre l'aiguillage des informations vers les différents éléments constitutifs du circuit 51, d'un organe de décalage 85 et d'un circuit d'aide à la division 87 coopérant avec l'unité 67. Ces différents éléments sont connectés de la manière suivante. La sortie du multiplexeur 79 muni de deux entrées est reliée à l'entrée de données de la mémoire 61 l'une de ses entrées constitue l'entrée 55, l'autre entrée est reliée a la sortie du registre 75 qui constitue la sortie 57. La sortie du registre 75 est, aussi, reliée aux entrées des mémoires 62 et 63. Les registres 70 et 71 sont destinés à contenir les opérandes pour la multiplication à effectuer par l'organe de multiplication 65. Les multiplexeurs 80 et 81 à quatre entrées correspondant à des positions de multiplexage permettent le stockage de ces opérandes. Dans une position de multiplexage du multiplexeur 80, le registre 70 est bouclé sur lui-même, dans une deuxième position le registre 70 est mis en relation avec le circuit 87, dans une troisième position il est mis en relation avec la sortie de données de la mémoire 61 et dans une quatrième position avec la sortie de données de la mémoire 63. Quant aux positions de multiplexage du multiplexeur 81 elles mettent en relation le registre 71 avec la sortie de données de la mémoire 61 pour une première position, avec la sortie de données de la mémoire 62 pour une deuxième position, avec la sortie de l'unité 67, via l'organe de décalage 85 pour une troisième position et avec lui-même pour la quatrième position. Le multiplexeur 82 est à cinq positions et il met en relation le registre 72, qui est un registre d'opérande pour l'unité 67, avec lui-même pour une première position, avec la sortie du registre 74 connectée en sortie de l'unité 67 pour une deuxième position, avec la sortie de l'organe de multiplication 65 pour une troisième, avec la sortie de données de la mémoire 63 pour une quatrième et avec la sortie de l'organe 85 pour la dernière ou cinquième. Le multiplexeur 83 est à quatre positions et met en relation le registre 73, qui est un registre pour l'autre opérande de l'unité 67 avec la sortie de données de la mémoire 61 pour une première position, avec la sortie de données de la mémoire 63 pour une deuxième position, avec le registre 76 dont l'entrée est connectée à la sortie de l'organe de décalage 85 pour une troisième position et avec cette sortie de l'organe 85 pour une quatrième position.
- Le circuit séquentiel 50 fournit différents signaux SX1, SMA, SMB et SAA pour l'aiguillage à provoquer à l'intérieur des multiplexeurs 79, 80, 81, 82 et 83 respectivement. Des codes de commande OPAL pour l'unité 67 peuvent être accompagnés de codes de décalage SHAL agissant sur l'opérande contenu dans le registre 72. Ce circuit séquentiel 50 fournit aussi des codes d'adressages de lecture et d'écriture pour les mémoires 61, 62 et 63. Soient les codes ADX1W et ADX1R pour l'adressage en écriture et en lecture de la mémoire 61, les codes ADX2W et ADX2R concernant la mémoire 62 et les codes ADRW et ADRR pour la mémoire 63. Ces codes d'adressage d'écriture et de lecture sont appliqués à des multiplexeurs d'adressage 91, 92 et 93 qui fournissent les codes d'adressages ADX1, ADX2 et ADR pour les mémoires 61 à 63. Les commandes de commutation à l'intérieur des multiplexeurs 91 à 93 sont effectuées systématiquement au rythme du signal H. Une première demi-période de ce signal est affectée à l'écriture donc, les codes ADX1, ADX2 et ADRR sont les codes ADX1W, ADX2W et ADRW. Pendant cette première demi-période, une inscription pourra avoir lieu si le signal d'écriture WX1, WX2 et WR appliqué aux mémoires 61, 62 et 63 est actif.
- Il est déclenché par le décodage de l'ensemble des mots MOT1 et MOT2 contenu dans les registres 21 et 22 à huit éléments binaires. La structure de ces mots est représentée à la figure 3. Un élément binaire AUTOCO : la valeur "1" de cet élément binaire déclenche le calcul des coefficients d'autocorrélation et implique que la méthode de Levinson va être exécutée. Des éléments binaires définissent M, qui fixe l'ordre de modélisation, l'élément L fixe la valeur d'oubli utilisée dans la méthode du gradient ; AUTOB, actif lorsque l'élément binaire est égal à "0", commande une remise à zéro automatique et DRC considéré pour la méthode du gradient donne le départ de réactualisation des coefficients, actif pour une valeur "1" de l'élément binaire.
- On se reporte à la figure 4 qui est un diagramme-temps et à la figure 5 qui montre l'implantation dans les mémoires 61 et 63 des différents valeurs en fonction des codes d'adresse. Pour la simplicité des explications on a limité à 5 le nombre de code d'adresse mais la généralisation à "p" codes se fera facilement.
- Sur les diagrammes-temps mentionnés dans le présent exposé, on a fait figurer des cycles de fonctionnement dont la durée est égale à la période du signal d'horloge H. Conformément à ce qui a été dit, chaque cycle est divisé en deux parties. Durant la première partie, des écritures peuvent avoir lieu dans les différentes mémoires et la deuxième partie est consacrée à la lecture.
- A la figure 4, on se place à l'instant t0 où un échantillon valide surgit à la borne 55, soit X5 cet échantillon. La figure 5 montre l'implantation des échantillons antérieurs X4, X3, ..., X0 dans la mémoire 61 rangés respectivement aux adreses "0", "1" ..., "4". A cet instant le code d'adresse de lecture et d'écriture de la mémoire 61 est "4", l'échantillon X5 est inscrit dans cette mémoire puis est lu et enfin se trouve enregistré dans les deux registres d'opérande 70 et 71 de l'organe de multiplication 65 à l'instant t1 de sorte que le produit X5.X5 se retrouve dans le registre 72 à l'instant t2, tout comme le coefficient R(0) se retrouve dans le registre 73, ce code d'adresse de lecture de la mémoire à l'instant antérieur étant "0". La somme X5.X5 + R(0) se retrouve dans le registre 75 à l'instant t3 et concerne le code d'écriture de la mémoire 62, "0" ; le coefficient de corrélation R(0) est donc remis à jour par la contribution de X5.X5. La mise à jour du coefficient R(1) commence à l'instant t1 où l'échantillon X4 est adressé en lecture et se retrouve à l'instant t2 dans le registre 71 et, comme le registre 70 contient toujours l'échantillon X5, le produit X5.X4 est formé à l'instant t3 dans le registre 72. Le coefficient R(1) se retrouve dans le registre 73 pour y être additionné avec le contenu du registre 72, le coefficient R(1) est ré-enregistré dans la mémoire 63 à l'instant t4. Ainsi, de la même manière, les différents coefficients restants R(2), R(3) et R(4) vont être remis à jour par la contribution de l'échantillon X5. Le processus se termine à l'instant t7. A l'instant t8 surgit un nouvel échantillon X6. Le traitement s'effectue alors de la même manière que pour l'échantillon X5. On notera cependant le décalage des codes d'adresses d'écriture et de lecture de la mémoire 61.
- Le processus d'autocorrélation s'arrête dès que l'horizon programmé est atteint. La méthode de Levinson est alors exécutée.
- Durant une première partie de cette phase, les coefficients du prédicteur a(k), hormis a(0) = 1, sont mis à zéro. La figure 6 est un diagramme-temps qui représente cette phase d'initialisation φILC. Les codes d'ordre d'adressage ADRX1(R) et ADRX2(R) vont évoluer entre les valeurs "0" et "M-1", la valeur M étant contenue dans le registre 21.
- L'évolution de ces codes n'a pas à être considérée pour cette phase. On considère maintenant l'instant t11 où le code OPAL applique à l'unité 67 est "0", c'est-à-dire que le résultat à sa sortie est à la valeur "0" quelles que soient les valeurs des opérandes appliquées à ses entrées. Cette valeur "0" est enregistrée dans le registre 75 et est enregistrée dans les mémoires 61 et 62 à l'adresse "4" après l'instant t12. A cet instant t12, le code OPAL est "1", ce qui implique que le code à sa sortie est forcément "1", pour qu'à l'instant t13, le chiffre "1" soit enregistré aux adresses "3" et "0" des mémoires 61 et 62. Après cet instant t13, le code OPAL redevient égal à "0" pour que des "0" soient enregistrés dans les autres emplacements des mémoires 61 et 62. Ceci se termine à l'instant t15. La répartition des contenus des mémoires 61, 62 et 63 est montrée à la figure 7.
- Durant la seconde partie de cette phase d'initialisation un paramètre K intervenant dans la méthode de Levinson est initialisé, pendant une phase φDIV à une valeur telle que :
K = R(1)/R(0) en général K = V/W - Cette division fait intervenir l'organe d'aide à la division 87 qui est un registre à décalage qui contient le résultat de cette division en emmagasinant au fur et à mesure les éléments binaires constituant ce résultat. Cette division commence à l'instant t15. Le dividende est contenu dans le registre 72 dans lequel a déjà été enregistrée la valeur R(1) à l'instant t13 et le diviseur est contenu dans le registre 73 qui contient la valeur R(0) depuis l'instant t12. La comparaison des contenus des registres 72 et 73 donne la valeur d'un élément binaire du quotient, et le contenu du registre 72 s'impute, en valeur absolue, de la valeur du diviseur qui reste identique à lui-même durant tout le processus de division mais le contenu du registre 72 est multiplié par 2. A l'instant t15 le code OPAL est -A+B ou -A-B selon le signe du dividende et du diviseur de du dividende et du diviseur de sorte que la quantité -K est en fait calculée.
- Cette valeur se trouve à l'instant t16 après le processus de division qui a duré 16 coups d'horloge correspondant à 16 bits, par exemple.
- Cette phase implique M fois l'exécution successive de trois phases élémentaires la phase : φDIV déjà mentionnée, la phase φACL qui modifie les coefficients, la phase φWL insérée dans la phase φACL et prévue pour modifier un paramètre W et la phase φKL qui modifie la valeur des coefficients pour la phase φACL suivante. La valeur a(0) reste égale à "1" durant tout le déroulement de l'exécution de la méthode de Levinson.
- La figure 8 est un diagramme-temps qui représente plus particulièrement la phase φACL. Après la phase d'initialisation, les opérations suivantes sont exécutées durant la phase φACL.
- a(1)₂ = a(1)₁ + K.a(0)₁ = K (A1)
- a(2)₂ = a(2)₁ + K.a(4)₁ = 0 (A2)
- a(3)₂ = a(3)₁ + K.a(3)₁ = 0 (A3)
- a(4)₂ = a(4)₁ + K.a(2)₁ = 0 (A4)
- A l'instant t16 (voir figure 8), le code ADRX2(R) est "0", ce qui permet au coefficient a(0) de se retrouver à l'instant t17 dans le registre 71 et comme le paramètre -K est dans le registre 70, le produit PO = K.a(0) se trouve, à l'instant t18, dans le registre 72 alors que dans le registre 73 se trouve le coefficient a(1)₁ et comme le code OPAL est -A+B le résultat a(1)+K.a(0) est fourni par l'unité 67 pour être rangé à l'instant t19 en transitant par le registre 75 dans la mémoire 62, le code ADRX2(W) étant "1". Ainsi l'opération (A1) est exécutée. A cet instant t19 le coefficient a(4) provenant toujours de la mémoire 62 se trouve dans le registre 71 pour que le produit P(4) = K.a(4) soit effectué. Ce produit est additionné avec le coefficient a(2) à l'instant t20 de sorte que l'opération (A2) est exécutée et le nouveau coefficient a(2) est rangé dans la mémoire 61 à l'instant t21. D'une manière semblable les opérations (A3), (A4) sont exécutées pour que les coefficients a(3) et a(4) soient rangés dans la mémoire 62 aux instants t23 et t25.
- Du fait du fonctionnement en "pipe-line" on notera la présence d'une phase φWL (voir figure 8) qui démarre avant la fin dela phase φDIV. Cette phase se déroule entre les instants t16 et t17 et a pour but de remettre à jour un coefficient W′ à partir de sa valeur antérieure et du paramètre K selon la formule :
W′ = W - K.V
La valeur de ce paramètre W est contenue dans un registre 76. Sa valeur initiale est :
W = R(0)
Comme à l'instant t16 on a obtenu la valeur -K et que la valeur V, dont la valeur initiale est R(1), est stockée dans le registre 71, le produit K.V est exécuté et se retrouve à l'instant t17 dans le registre 72 pour être additionné à la valeur W précédente provenant du registre 76. La nouvelle valeur W′ est finalement emmagasinée dans le registre 76 à l'instant t18. - A la suite de la phase φACL se déroule une phase φKL dont le diagramme-temps est montré à la figure 9.
- Durant cette phase, l'opération suivante est exécutée :
V = R(2).a₂(0)+R(1).a₂(1)+R(0).a₂(2)-R(5).a₂(3)+R(4).a₂(4) pratiquement :
V = R(2) + R(1).a₂(1)
puisque les autres coefficients a₂(j) sont encore nuls. - Cette phase débute à l'instant t24 lorsque le code ADRX2(R) est le code "0" et comme le code ADRR(R) était déjà égal à 2, les valeurs R(2) et a₂(0) peuvent être mises à l'instant t25 dans les registres 70 et 71. Le produit PR(0) de ces valeurs est à l'instant t26 dans le registre 72 puis à l'instant t27 dans le registre 73 en transitant par l'unité 67. A l'instant t27 le produit PR(1) qui est le produit de R(1) par a₂(1) se trouve dans le registre 72 de sorte que la somme peut être effectuée, le résultat SO1 est alors mis, à l'instant t29, dans le registre 73 qui va faire ainsi office d'accumulateur. Les produits successifs PR(2), PR(3) et PR(4) égaux respectivement à R(0).a₂(2), R(5).a₂(3), et R(4).a₂(4) vont se trouver successivement aux instants t28, t29 et t30 dans le registre 72 et s'accumuler dans le registre 73 et le résultat final stocké à t31 dans le registre 71 et dans le registre 72.
- Après l'instant t31, une autre phase de division est déclenchée pour évaluer la quantité V′/W′ ce qui donne le coefficient K′ utile pour l'évolution des coefficients du prédicteur. Avant d'examiner la phase φACL qui suit et qui débute à l'instant t32 il convient de noter la valeur des codes d'adresse de lecture des mémoires 61, 62 et 63 (le code d'adresse d'écriture étant retardé des codes d'adresses de lecture de deux temps d'horloge TH) qui sont respectivement (1, 0, 3).
- A la phase suivante φACL les opérations effectuées sont :
- a(1)₁ = a(1)₂ + K′.a(1)₂ = K + K′K (A5)
- a(2)₁ = a(2)₂ + K′.a(0)₂ = K′ (A6)
- a(3)₁ = a(3)₂ + K′.a(4)₂ = 0 (A7)
- a(4)₁ = a(4)₂ + K′.a(3)₂ = 0 (A8)
- Pour ces opérations le rôle des mémoires 61 et 62 est échangé, de sorte que la mémoire 62 va être adressée comme la mémoire 61 et vice versa.
- Ainsi, après l'exécution de plusieurs phases successives, l'évolution de la valeur des coefficients du prédicteur est la suivante, donnée par le jeu d'équations (A9 à A12 d'une part et A13 à A16 d'autre part) :
- a(1)₂ = a(1)₁ + K˝.a(2) (A9)
- a(2)₂ = a(2)₁ + K˝.a(1) (A10)
- a(3)₂ = a(3)₁ + K˝.a(0) = K˝ (A11)
- a(4)₂ = a(4)₁ + K˝.a(4) = 0 (A12)
- a(1)₁ = a(1)₂ + K‴.a(3) (A13)
- a(2)₁ = a(2)₂ + K‴.a(2) (A14)
- a(3)₁ = a(3)₂ + K‴.a(1) (A15)
- a(4)₁ = a(4)₂ + X‴.a(0) = K‴ (A16)
- Cette méthode va être décrite pour un ordre 5, toujours à titre d'exemple.
- Elle est exécutée en quatre phases : une phase d'attente d'échantillon φAG, une phase de calcul de R(0) : φRG, une phase de calcul de l'erreur φEG et une phase de remise à jour des coefficients du prédicteur φCG. Cette méthode est explicitée à l'aide du diagramme-temps de la figure 10 et de l'implémentation des mémoires représentée à la figure 11.
- Soit l'instant t50 où apparaît un échantillon X(n). La phase d'attente φAG se situe donc antérieurement à cet instant. Cette phase se caractérise essentiellement par un arrêt de l'évolution des codes d'adressages ADRX1 et ADRX2.
- Durant cette phase, la valeur de R(0) qui est contenue dans le registre 74 est remise à jour selon la formule (3) :
R(0) = (1-L)R0 + X²(n)
La valeur L provient du registre 21. Pour signaler qu'un échantillon X(n) se trouve à l'entrée de la mémoire 61 via le multiplexeur 79, une transition descendante d'un signal EDI est engendrée. La valeur R(0) antérieure, contenue dans le registre 74 est mise dans le registre 72. Le code d'opération appliqué à l'unité 67 est un code de décalage d'opérande"As4" pour diviser l'opérande contenu dans le registre A d'un multiple de deux, ce qui revient à le décaler d'une quantité dépendant de "L". Ce code décalé se retrouve à l'instant t51 dans le registre 73. Dans le registre 72, se trouve toujours la valeur antérieure R(0). - A l'instant t50 l'échantillon X(n) est enregistré dans la mémoire 61 à l'adresse "5" et prend ainsi la place de l'échantillon le plus ancien (à la figure 11, l'échantillon X(n-6)) et est restitué à l'instant t51 pour être emmagasiné dans les registres 70 et 71. Le produit X²(n) est alors exécuté.
- A l'instant t52, d'une part la valeur R(0) a subi l'influence du facteur d'oubli et porte la référence R⁰(0) -à la figure 10 cette valeur est emmagasinée dans le registre 74- d'autre part le résultat du produit X²(n) est mis dans le registre 72. La phase φRG est terminée à l'instant t53, lorsque l'addition des valeurs contenues dans les registres 72 et 73 est effectuée et le résultat rangé dans le registre 74.
-
- Cette phase démarre avec les calculs déjà commencés durant la phase φRG. Ainsi à l'instant t51 les codes d'adresses de lectures ADRX1(R) et ADRX2(R) étaient "5" et "0" respectivement, ce qui permet aux valeurs X(n) et a(0) de se retrouver dans les registres d'entrée 70 et 71 de l'organe de multiplication à l'instant t52 de sorte qu'à l'instant t53 le premier élément de la somme indiquée dans la dernière formule se trouve dans le registre 72 à l'instant t53 et à l'instant t54 ce résultat se retrouve dans le registre 73 qui va servir d'accumulateur. Ainsi aux instants t54, t55, t56, t57 et t58, les différents produits a1.X(n-1), a2.X(n-2), a3.X(n-3), a4.X(n-4) et a5.X(n-5) vont se trouver successivement dans le registre 72 pour que l'accumulation puisse s'effectuer dans le registre 73. A l'instant t59, le calcul de e(n) est terminé et le résultat est mis dans le registre 70 pour que la phase suivante puisse s'effectuer.
- Durant cette phase les calculs suivants sont effectués :
a′(0) = 1 (B2)
a′(p) = a(p) - TTT.e(n).X(n-p) (B3)
avec p = 1 à 5,
les valeurs accentuées représentent la valeur mise à jour, la valeur TTT est normalisée par la valeur R(0) lors d'un calcul préalable, est fixe et est obtenue par un décalage de l'opérande contenu dans le registre 72. - Ce code représenté à la figure 10 par "-Ash′+B" apparaît dès l'instant t60, pour le calcul des différents coefficients de la formule (B3). La formule (B2) étant calculée à l'instant t59 le code d'opération appliqué à l'organe force à "1" sa valeur de sortie. A l'instant t66 tous les coefficients contenus dans la mémoire 62 ont été mis à jour.
- A la phase φCG peut se superposer une phase d'attente pour l'échantillon suivant X(n+1). Sur la figure on admet que cet échantillon surgit à l'instant t66. Cet échantillon est enregistré à l'adresse "4" de la mémoire, le traitement s'effectue comme ci-dessus mais tous les codes d'adresses sont incrémentés d'une unité et ainsi de suite pour les autres échantillons qui surviennent.
- Il va de soi que différentes mesures ont été prises pour assurer la cohérence du calcul de coefficients, lorsque le dispositif est utilisé dans un radioaltimètre du type décrit dans la demande de brevet 2622021.
- Le schéma est représenté à la figure 13. Ce circuit est constitué essentiellement par un circuit séquentiel 100 et par un circuit de calcul 101.
- Tout comme pour le circuit 5, le circuit séquentiel 100 fournit différents signaux de commande pour que le circuit de calcul 101 exécute les différentes tâches qui lui sont affectées en fonction des informations contenues dans les registrès 23, 24, 25 et 26 eux-mêmes contenus dans le circuit de registres de paramètres 15 (figure 1).
- Le circuit d'analyse est muni de deux entrées 102 et 103 pour pouvoir traiter soit les échantillons pour effectuer une transformée de Fourier discrète, soit les coefficients du prédicteur afin de restituer les composantes spectrales.
- Les échantillons et les coefficients sont enregistrés dans une mémoire 105 en transitant par un multiplexeur 107. Il y est prévu un organe de multiplication 110 pour faire le produit des nombres contenus dans des registres de "pipeline" 112 et 113. Ces registres sont connectés en sortie de la mémoire 105 et d'une mémoire 115 fournissant des valeurs de cosinus et de sinus, comme cela sera explicité dans la suite du présent exposé. Une unité arithmétique et logique 120 effectue différentes opérations en fonction d'un code d'opération 0PA2. Les registres d'opérandes 122 et 123 sont connectés respectivement aux sorties de multiplexeurs 124 et 125. Le multiplexeur 124 est muni de deux entrées ; l'une reçoit un code d'initialisation pour initialiser le contenu du registre 122 et l'autre est connectée à la sortie de l'unité 120 par l'intermédiaire d'un organe de multiplication 130 qui multiplie ou non par deux le code de sortie de l'unité 120. Le multiplexeur 125 est muni, lui, de 3 entrées, la première est reliée à la sortie de l'organe 110 et les deuxième et troisième à des organes de décalage 132 et 133, respectivement. Ces organes de décalage décalent ou non de 8 bits vers la droite les nombres contenus dans des registres 136 et 137.
- Un registre 140 qui est du type registre à décalage, enregistre la valeur de l'élément binaire de plus fort poids du code à la sortie de l'unité 120. Les sorties parallèles de ce registre sont connectées aux entrées de données d'une mémoire 145 via un multiplexeur 174 à deux entrées qui permet aussi de mettre en relation la sortie del'unité 120 avec la mémoire 145. Les composantes de spectre sont rendues disponibles à la sortie 150 de la mémoire 145, ce qui constitue en fait la sortie du circuit 7.
- Les mémoires 105 et 145 sont adressées de la même manière que les mémoires 61, 63 au moyen d'un code d'adresse ADM et ADSP. La mémoire 115 qui est une mémoire à lecture seule est adressée par le code ADCS. Les signaux SI2, SA2, SB2 et SS2 positionnent les multiplexeurs 107, 124, 125 et 147. Le signal M2 appliqué à l'organe 130 pour autoriser ou non une multiplication par deux des signaux D8 et D8′ force les organes 132 et 133 à diviser par 8 ou non en effectuant un décalage correspondant à cette division. Le code OPA2 commande les opérations à effectuer par l'unité 120. Le circuit 100 élabore ces différents signaux et codes ADM, ADCS, ADSP, SA2, SB2, OPA2, SS2, D8, D8′, M2 et SI2 en conformité avec le fonctionnement de ce circuit 7 expliqué ci-dessus.
-
-
- Les différents échantillons ont été stockés au préalable dans la mémoire 105. Le calcul de la composante SR(k) commence à l'instant t100 (voir figure 15). A chaque coup d'horloge les échantillons X(0), X(1), ..., X(N-1) vont venir occuper le registre 112 et simultanément les différentes valeurs de cos : 1, cos2πk/N, ..., cos2πk N-1/N, vont venir occuper le registre 113 de sorte que le produit indiqué par la formule (D1) puisse s'effectuer. Le résultat du produit est stocké à chaque coup d'horloge dans le registre 123. Le registre 122 sert d'accumulateur et est mis à zéro (INIT) au préalable. Lorsque le calcul de SR(k) est terminé, le résultat est mis dans le registre 136 (t107). L'instant t107 marque aussi le démarrage du calcul de SI(k) qui s'effectue de la même manière que SR(k) mais en commençant avec l'échantillon X(1) et les valeurs de sinus telles que données par la formule (D2). Le résultat est mis à l'instant t111 dans le registre 137.
- Selon une caractéristique de l'invention, la quantité :
S(k) = √[SR(k)]² + [SI(k)]² (D3)
est évaluée de la manière suivante :
S(k) = MAX[|SR(k)|,|SI(k) + 3/8 MIN[|SR(k)|, |SI(k)|]
où MAX[A,B] = A si A>B
= B si B>A
où MIN[A,B] = A si A<B
= B si B<A - Cette approximation amène une imprécision de 5 % seulement. Pour cela à l'instant t111 la valeur SR(k) est transférée du registre 136 au registre 123. Le code OPA2 est tel que, à la sortie de l'unité 120, on obtient sa valeur absolue |SR| qui est transférée au temps t112 dans le registre 122. A cet instant t112 la valeur SI(k) est mise dans le registre 123 de sorte qu'à l'instant t113 sa valeur valeur absolue |SI| est mise dans le registre 137 et se retrouve à l'instant suivant t114 dans le registre 123. Il est dès lors possible de déterminer la plus grande de ces quantités [|SR| et |SI| appelée MAX et par conséquent la plus petite MIN. Le résultat de cette comparaison est envoyé au circuit séquenceur 100 de sorte que les contenus des registres 136 et 137 puissent être judicieusement envoyés dans les registres 123 et 122. Ainsi, à l'instant t115 la valeur MIN qui est contenue dans l'un des registres 136 et 137 est mise dans le registre 123 ; cette valeur est divisée par l'unité 120, le résultat est mis à l'instant t116 dans le registre 122 alors que lea valeur MAX est mise dans le registre 122 qui va servir d'accumulateur pour accumuler successivement la valeur MAX à l'instant t117 et la valeur MIN/8 à l'instant t118 obtenue par l'un des décaleurs 132 et 133 ; selon que la valeur MIN est contenue dans le registre 136 et 137 à l'instant t118 la composante spectrale peut être enregistrée dans la mémoire 145.
-
- On remarquera que les calculs (D4), (D5), (D6) sont pratiquement identiques à ceux de la TFD et sont représentés entre les instants t200 à t228 à la figure 16. La division indiquée par la formule (D7) va faire intervenir le registre 140. On se place à l'instant t217 où se termine l'exécution de la formule (D5) mais, ici, le résultat est envoyé dans le registre 136 pour se retrouver à l'instant t218 suivant dans le registre 123 qui contient dès lors le diviseur de la division indiquée à la formule (D7) ; en ce même instant le chiffre "1" est mis dans le registre 122 en tant que dividende. Ce chiffre "1" résulte d'une commande OPA2 appliquée à l'instant antérieur. Le processus de division démarre alors et le résultat final, contenu dans le registre 140, peut alors être transféré dans la mémoire 145 à l'instant t221.
- Un code approprié est appliqué à l'accès 5 sur la ligne 13 ; ce code agit par le multiplexeur de sortie 35 pour mettre en relation l'accès 4 soit avec l'horloge de datation 30 pour une certaine donnée émise sur la ligne 10, soit avec le registre de datation pour une autre donnée.
- On remarquera que le nombre d'accès relativement réduit permet au dispositif de l'invention d'être réalisé en une seule puce (chip).
Claims (12)
1. Dispositif d'analyse spectrale d'un signal numérique, caractérisé en ce qu'il comporte des accès de commande pour recevoir une information de méthode d'analyse destinée à commander au moins un circuit d'analyse.
2. Dispositif d'analyse spectrale selon la revendication 1, caractérisé en ce qu'il comporte un premier circuit d'analyse pour appliquer une première méthode sur le signal numérique et pour appliquer au moins une deuxième méthode en coopérant avec un deuxième circuit d'analyse.
3. Dispositif d'analyse spectrale selon la revendication 2, caractérisé en ce que la première méthode est une méthode de transformée de Fourier discrète tandis que la deuxième méthode est une méthode de coefficients de prédiction établis par le deuxième circuit d'analyse.
4. Dispositif d'analyse spectrale selon la revendication 3, caractérisé en ce que l'information de méthode peut comporter une sous-information de coefficient pour définir une méthode de détermination de coefficients à établir par le deuxième circuit d'analyse.
5. Dispositif d'analyse spectrale selon la revendication 4, caractérisé en ce que la méthode de détermination de coefficient est l'une et/ou l'autre des méthodes suivantes :
- méthode de Levinson,
- méthode du gradient.
- méthode de Levinson,
- méthode du gradient.
6. Dispositif d'analyse spectrale selon l'une des revendications 1 à 5, caractérisé en ce qu'il comporte un ensemble de registres pour contenir l'information de méthode et les paramètres qui y sont associés.
7. Dispositif d'analyse spectrale selon l'une des revendications 2 à 6, caractérisé en ce que lesdits circuits d'analyse ont une structure de processeurs formés de mémoires adressables, d'unités de calculs et d'organes de séquencement.
8. Dispositif d'analyse spectrale selon l'une des revendications 1 à 7, caractérisé en ce qu'une corrélation du signal numérique est effectuée et en ce qu'une sortie est prévue pour fournir le coefficient R(0) de la corrélation.
9. Dispositif d'analyse selon l'une des revendications à 8, caractérisé en ce que l'analyse de spectre indique une opération du type :
D(k) = √DR(k)² + DI(k)²
et en ce que le circuit d'analyse comporte des premiers moyens pour déterminer la valeur MAX de |DR(k)| et de |DI(k)| et la valeur MIN de |DR(k)| et de |DI(k)| des deuxièmes moyens pour effectuer l'opération :
D(k) ∼ MAX(|DR|,|DI|) + 3/8 MIN(|DR|,|DI|).
D(k) = √
et en ce que le circuit d'analyse comporte des premiers moyens pour déterminer la valeur MAX de |DR(k)| et de |DI(k)| et la valeur MIN de |DR(k)| et de |DI(k)| des deuxièmes moyens pour effectuer l'opération :
D(k) ∼ MAX(|DR|,|DI|) + 3/8 MIN(|DR|,|DI|).
10. Dispositif d'analyse spectrale selon l'une des revendications 1 à 9, caractérisé en ce qu'il est réalisé en une seule puce.
11. Dispositif d'analyse spectrale selon l'une des revendications 1 à 10, caractérisé en ce qu'il comporte une horloge de datation accessible à l'utilisateur pour dater certaines données.
12. Dispositif d'analyse spectrale selon la revendication 11, caractérisé en ce qu'il comporte un registre pour stocker la date fournie par l'horloge de datation.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR8910187A FR2650413A1 (fr) | 1989-07-28 | 1989-07-28 | Dispositif d'analyse spectrale d'un signal numerique |
FR8910187 | 1989-07-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
EP0410870A1 true EP0410870A1 (fr) | 1991-01-30 |
Family
ID=9384235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP90402126A Withdrawn EP0410870A1 (fr) | 1989-07-28 | 1990-07-24 | Dispositif d'analyse spectrale d'un signal numérique |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0410870A1 (fr) |
JP (1) | JPH03110483A (fr) |
FR (1) | FR2650413A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10062571C1 (de) * | 2000-12-15 | 2002-05-16 | Infineon Technologies Ag | Simulationsverfahren und Testanordnung zur Ermittlung von nichtlinearen Signalverzerrungen |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2750766B1 (fr) * | 1996-07-05 | 1998-11-13 | Thomson Csf | Procede d'analyse spectrale, notamment pour radioaltimetre de type fm/cw a traitement numerique |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0251387A1 (fr) * | 1986-06-27 | 1988-01-07 | Thomson-Trt Defense | Dispositif radar pour mesurer la distance qui le sépare d'une surface |
-
1989
- 1989-07-28 FR FR8910187A patent/FR2650413A1/fr not_active Withdrawn
-
1990
- 1990-07-24 EP EP90402126A patent/EP0410870A1/fr not_active Withdrawn
- 1990-07-27 JP JP19807390A patent/JPH03110483A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0251387A1 (fr) * | 1986-06-27 | 1988-01-07 | Thomson-Trt Defense | Dispositif radar pour mesurer la distance qui le sépare d'une surface |
Non-Patent Citations (4)
Title |
---|
IEE PROCEEDINGS-F, vol. 128, no. 5, octobre 1981, pages 331-336; A.E. CARR et al.: "Digital signal processing for target detection in FMCW radar" * |
IEEE TRANS. ON AEROSPACE & ELECTR. SYST., vol. AES-16, no. 4, juillet 1980, pages 517-525; J.P. TOOMEY: "High-resolution frequency measurement linear prediction" * |
MACHINE DESIGN, vol. 56, no. 27, novembre 1984, pages 109-113; R.J. VAN WOERT: "New instruments speed control system design" * |
SIGNAL PROCESSING, vol. 10, no. 1, janvier 1986, pages 61-74; N. MARTIN: "An AR spectral analysis of non-stationary signals" * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10062571C1 (de) * | 2000-12-15 | 2002-05-16 | Infineon Technologies Ag | Simulationsverfahren und Testanordnung zur Ermittlung von nichtlinearen Signalverzerrungen |
Also Published As
Publication number | Publication date |
---|---|
FR2650413A1 (fr) | 1991-02-01 |
JPH03110483A (ja) | 1991-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0173383B1 (fr) | Processeur pour effectuer suivant différents modes le traitement de données et dispositif de multiplication convenant pour un tel processeur | |
EP0029131B1 (fr) | Procédé de commande de l'affectation de ressources dans un système comportant plusieurs processeurs à fonctionnement simultané | |
FR3090932A1 (fr) | Système de multiplication de matrices par blocs | |
EP0020202B1 (fr) | Système multiprocesseur de traitement de signal | |
BE897441A (fr) | Calculateur associatif permettant une multiplication rapide | |
FR2632088A1 (fr) | Multiplieur de nombres complexes | |
FR2819073A1 (fr) | Microarchitecture d'unite arithmetique | |
EP0485921B1 (fr) | Dispositif prévu pour le traitement de l'algorithme de Viterbi comprenant un processeur et un opérateur spécialisé | |
EP0171305B1 (fr) | Circuit de calcul de la transformée de Fourier discrète | |
FR2645986A1 (fr) | Procede pour accelerer les acces memoire d'un systeme informatique et systeme pour la mise en oeuvre du procede | |
WO2020012104A1 (fr) | Circuit de génération de facteurs de rotation pour processeur ntt | |
EP0410870A1 (fr) | Dispositif d'analyse spectrale d'un signal numérique | |
FR2772950A1 (fr) | Dispositif electronique de calcul d'une transformee de fourier a architecture dite "pipelinee" et procede de commande correspondant | |
EP0394115B1 (fr) | Dispositif d'accélération des accès mémoire dans un système informatique | |
FR2597283A1 (fr) | Dispositif de traitement d'images pour l'estimation du deplacement d'objets situes dans celles-ci | |
FR2586312A1 (fr) | Dispositif d'autocorrelation | |
EP0043745B1 (fr) | Système de traitement et de mémorisation de données numériques, notamment pour tomodensitomètre | |
EP1821197A2 (fr) | Dispositif de traitement en notation polonaise inversée, et circuit intégré électronique comprenant un tel dispositif de traitement | |
FR2475763A1 (fr) | Processeur numerique a structure pipeline | |
EP0407273B1 (fr) | Dispositif de calcul d'une prédiction pour un traitement d'images | |
EP0018238A1 (fr) | Procédé et ensemble de calcul, aléatoirement par excès ou par défaut, pour fournir des résultats de calcul et en déterminer le nombre de chiffres significatifs exacts | |
EP1811371A1 (fr) | Dispositif de traitement en notation polonaise inversée pour la manipulation de tableau, et circuit intégré électronique comprenant un tel dispositif de traitement | |
FR2534382A1 (fr) | Dispositif de reception de signaux de type tacan | |
FR2725055A1 (fr) | Dispositif de calculs d'operations modulaires et carte a puce comportant un tel dispositif | |
CA2359198C (fr) | Unite de calcul pour l'execution d'un protocole cryptographique |
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 |
Kind code of ref document: A1 Designated state(s): DE FR GB IT |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: N.V. PHILIPS' GLOEILAMPENFABRIEKEN Owner name: TRT TELECOMMUNICATIONS RADIOELECTRIQUES ET TELEPHO |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 19910731 |