WO2003063350A2 - Digital signal filtering method, a frequency synthesiser and the corresponding computer programs - Google Patents

Digital signal filtering method, a frequency synthesiser and the corresponding computer programs Download PDF

Info

Publication number
WO2003063350A2
WO2003063350A2 PCT/FR2003/000180 FR0300180W WO03063350A2 WO 2003063350 A2 WO2003063350 A2 WO 2003063350A2 FR 0300180 W FR0300180 W FR 0300180W WO 03063350 A2 WO03063350 A2 WO 03063350A2
Authority
WO
WIPO (PCT)
Prior art keywords
digital signal
original digital
samples
matrix
sequence
Prior art date
Application number
PCT/FR2003/000180
Other languages
French (fr)
Other versions
WO2003063350A3 (en
Inventor
Alain Bourdillon
Original Assignee
Universite De Rennes 1
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universite De Rennes 1 filed Critical Universite De Rennes 1
Publication of WO2003063350A2 publication Critical patent/WO2003063350A2/en
Publication of WO2003063350A3 publication Critical patent/WO2003063350A3/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/0223Computation saving measures; Accelerating measures

Definitions

  • the field of the invention is that of filtering digital signals.
  • the filtering method according to the invention has many applications. It can in particular, but not exclusively, be used in frequency synthesizers, used in electronic devices such as receivers (radiocommunication or other), signal generators, modulators, demodulators, mixers, etc.
  • the original signal to be filtered is a sinusoidal digital signal, comprising a dominant sinusoidal component on which parasitic signals are superimposed.
  • This original digital signal to be filtered is for example obtained with a direct digital frequency synthesis system (SND system).
  • SND system can possibly be combined with a digital / analog converter (DAC), if one wishes to produce an analog signal.
  • DAC digital / analog converter
  • the first solution mentioned above is unacceptable in applications where the frequency must be variable.
  • the second solution mentioned above is expensive and limits the processing speed.
  • a pseudo-random sequence is added to the signal phase (so-called "dither method”).
  • This other known technique is presented for example in the document ("data sheet") of the company GRAYCHIP INC entitled: “Multi-standard quad DDC chip” rev 0.3, April 20, 2000. It is shown there that, in certain cases, the level of the parasitic lines can be reduced by about 14 dB.
  • the invention particularly aims to overcome these various drawbacks of the state of the art.
  • one of the objectives of the present invention is to provide a method of filtering a digital signal which is simple to implement and inexpensive in number of operations, so as not to require computing times high and can be implemented in real time.
  • Another objective of the invention is to provide such a method making it possible to obtain an improvement greater than 14 dB, and which can range up to 60 dB, or even beyond.
  • the present invention is based on a simplification of the decomposition into singular values of the Hankel matrix of the signal, and more precisely on a simplification of a matrix ⁇ appearing in this decomposition. This simplification is based on the fact that, in the present context, the original signal comprises, in addition to the noise, only a dominant sinusoidal component.
  • the matrix ⁇ obtained after simplification, ⁇ modified makes it possible to obtain a filtered Hankel matrix, H flUrée , the first and last lines of which (placed end to end constitute the sequence of N samples "sfiltered;"of the filtered signal) can be calculated quickly and easily.
  • the matrix ⁇ is a matrix n x p written:
  • the matrix ⁇ obtained after simplification, ⁇ modified is very simple with only one nonzero element ( ⁇ ,).
  • the method comprises the following steps: obtaining a vector v, whose components v k , k varying from 1 to N / 2, are the
  • N / 2 values of the translated autocorrelation function of the sample sequence s ; the original digital signal; calculation of scalars u ⁇ and u 2 such that: N / 2
  • the digital filtering applied to the original digital signal is fast and inexpensive in computing power.
  • the scalar calculation equations Uj and u 2 as well as the calculation equations for the N samples of the filtered signal, result from a simplification, as discussed above and presented in detail below, of a matrix ⁇ appearing in the decomposition into singular values (SND) of the Hankel matrix of the original digital signal.
  • SND singular values
  • the step of obtaining the vector v consists in calculating the components v k , k varying from 1 to ⁇ / 2, according to the following equation:
  • This calculation can be applied in all cases, whether or not the frequency of the original digital signal is known, since it is carried out from the samples of the original digital signal.
  • the step of obtaining the vector v consists in calculating N / 2 theoretical values of the translated autocorrelation function of the sequence of samples s ⁇ of the original digital signal.
  • this variant applies when the frequency of the original digital signal is known. This is particularly the case when the original digital signal results from a direct digital frequency synthesis (SND). This variant makes it possible to obtain better results in terms of spectral quality.
  • SND direct digital frequency synthesis
  • the step of obtaining the vector v is carried out once and for all, for a given frequency of the original digital signal.
  • the vector v should only be recalculated if the frequency of the original digital signal changes.
  • the step of obtaining the vector v is carried out beforehand several times, for different possible frequencies of the original digital signal, so as to have a set of vectors v each associated with a separate frequency.
  • the method comprises a step of storing the set of vectors v, and, during the step of digital filtering of the original digital signal having a given frequency, obtaining the vector v consists in reading the vector from the storage means v associated with said given frequency.
  • This variant is particularly interesting if the frequency changes are frequent (for example synthesis of a "chirp" signal). Indeed, it saves time during the filtering of the original digital signal, the vectors v having been calculated previously.
  • the invention also relates to one comprising means allowing the implementation of the above-mentioned method.
  • the invention also relates to a computer program, comprising sequences of instructions suitable for implementing a method as mentioned above when said program is executed on a computer.
  • the invention also relates to a computer program product for filtering an original digital signal, represented by a sequence of samples s i5 i varying from 1 to
  • N where N is the number of samples to be processed, the original digital signal comprising a dominant sinusoidal component superimposed on parasitic signals, said method allowing the level of the spurious signals to be reduced and a filtered digital signal having good spectral quality to be obtained, said computer program product comprising program code instructions recorded on a medium usable in a computer comprising computer-readable programming means for perform a digital filtering step based on a simplification of a matrix ⁇ appearing in the decomposition into singular values (SND) of the Hankel matrix of the original digital signal.
  • SND singular values
  • the invention also relates to a computer program product for filtering an original digital signal, represented by a sequence of samples s i; i varying from 1 to
  • is the number of samples to be processed, the original digital signal comprising a dominant sinusoidal component superimposed on parasitic signals, said method making it possible to reduce the level of the parasitic signals and obtain a filtered digital signal having good quality spectral
  • said computer program product comprising program code instructions recorded on a medium usable in a computer comprising: computer-readable programming means for performing a step of obtaining a vector v, the components of which v k , k varying from 1 to ⁇ / 2, are the N / 2 values of the translated autocorrelation function of the sequence of samples s ; the original digital signal; computer-readable programming means for performing a step of calculating scalars u ⁇ and u 2 such as:
  • FIG. 1 shows a simplified flowchart of a particular embodiment of the digital signal filtering method according to the invention
  • FIG. 2 is a block diagram illustrating the implementation of a particular embodiment of the filtering method according to the invention
  • - Figure 3 shows the spectrum of an example of original digital signal, generated by direct digital synthesis
  • Figures 4 to 6 each show the spectrum of the original digital signal of Figure 3, after filtering according to a particular embodiment of the present invention, by blocks of 512 points (fig.4), 2048 points (fig.5 ) and 4096 points (fig. 6) respectively.
  • the invention therefore relates to a method of filtering an original digital signal.
  • the original digital signal results from a synthesis step (1) making it possible to obtain an original digital signal (two channels I and Q quadrature), represented by a sequence of samples S ;, i varying from 1 to N, where N is the number of samples to be processed.
  • This synthesis step (1) consists for example in the implementation of a direct digital frequency synthesis (SND).
  • SND direct digital frequency synthesis
  • the SND technique is well known to those skilled in the art and will not be described in more detail below. It will be noted that with this technique, the frequency of the synthesized signal is known. It is clear however that the present invention applies whether or not the frequency of the original digital signal is known.
  • the filtering according to the method of the invention (2) is followed by a step (3) of digital / analog conversion.
  • the digital filtering (2) according to the method of the invention comprises: a step (21) of obtaining a vector v, whose components v k , k varying from 1 to N / 2, are the N / 2 values of the translated autocorrelation function of the sequence of samples S; the original digital signal; a step (22) of calculating scalars Uj and u 2 such as:
  • the steps (22) of calculating scalars U [and u 2 and (23) of calculating a sequence of samples filtered; require 2N complex multiplications and N-2 complex additions.
  • N 512 points for example, it takes about 1024 multiplications and 510 additions.
  • the processing time of a sequence of N points depends linearly on N and the method according to the invention is therefore particularly advantageous from the point of view of the computation time.
  • the step (21) of obtaining the vector v can be carried out in two different ways ,.
  • step (21) of obtaining the vector v consists in calculating the components v k , k varying from 1 to N / 2, according to the following equation:
  • a variant can be envisaged in the particular case where the frequency of the synthesized signal is known. This is for example the case if the synthesis step (1) consists in the implementation of a direct digital frequency synthesis (SND).
  • SND direct digital frequency synthesis
  • step (21) of obtaining the vector v consists in calculating N / 2 theoretical values of the translated autocorrelation function of the sequence of samples S; of the original digital signal. We then obtain better results in terms of spectral quality.
  • a counter 8 is clocked by a clock H and has a capacity N / 2.
  • the outputs of the counter 8 make it possible to address a RAM memory 9 which contains the N / 2 components of the vector v, which are assumed to have been calculated beforehand (see detailed discussion below).
  • This value is stored in a memory 6 by the output signal from the decoder 7, when the counter 8 has reached its maximum value.
  • the value u 2 is calculated by the first multiplier 4 (equation (b). When the value of u 2 is available, it is used in the second multiplier 10 to generate the next N / 2 elements of the filtered signal, according to equation (d).
  • the N / 2 components of the vector v can be calculated beforehand, once and for all, for a given frequency of the original digital signal.
  • the vector v is stored and it should not be recalculated unless the frequency of the synthesized signal changes. If the frequency changes are frequent (for example synthesis of a "chirp" signal), one can envisage a variant, to save time, consisting in calculating beforehand several vectors v, each associated with a particular possible frequency of the synthesized signal , and to store this set of vectors v in a memory (RAM, ROM, EPROM, ).
  • obtaining the vector v consists in reading in this memory the vector v, among the plurality of stored vectors, associated with the frequency of the original digital signal which it is desired to filter.
  • FIGS. 1 and 2 The performances of the method according to the invention, in the embodiment presented above in relation to FIGS. 1 and 2, were evaluated using a program simulating an SND signal generator.
  • Figure 3 illustrates the FFT spectrum of an example signal generated at the frequency
  • FIG. 4 each show the spectrum of the original digital signal of Figure 3, after filtering according to the invention, in blocks of 512 points (fig.4), 2048 points (fig.5) and 4096 points (fig .6) respectively. It is observed that the level of the parasitic lines gradually decreases when the frequency moves away from that of the carrier. It is also observed that the signal becomes increasingly pure when the number of points processed increases. The degree of improvement of the spectrum depends slightly on the frequency chosen, but the simulations show that the processing on 2048 points makes it possible to obtain a spectral purity close to 100-110 dB whatever the frequency synthesized.
  • the signal includes N values s ⁇ fsj s 2 s 3 s 4 ... s N ⁇ .
  • N H indicates the Hermitian transpose of V and ⁇ is a matrix nxp composed of the singular values classified in descending order: 0. 0 0 0. 0
  • the ⁇ values correspond to the powers of the components present in the signal. The lowest values correspond to noise.
  • v u , v 21 , ... v pl can be calculated using the following matrix product:
  • H H is the Hermitian transpose of H and H (:, l) represents the first column of H.
  • This equation corresponds to the above-mentioned equation (e), used during step (21) of obtaining the vector v.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

The invention relates to a digital signal filtering method, a frequency synthesiser and the corresponding computer programs. More specifically, the invention relates to a method of filtering an original digital signal which is represented by a sequence of samples si, wherein i varies between 1 and N and N is the number of samples to be processed, said original digital signal comprising a dominant sinusoidal component which superimposes clutter signals. The inventive method can be used to reduce the level of clutter and to obtain a filtered digital signal having a good spectral quality. According to the invention, the method comprises a step involving digital filtering based on a simplification of a matrix Σ that appears in the singular value decomposition (SVD) of the Hankel matrix of the original digital signal.

Description

Procédé de filtrage d'un signal numérique, synthétiseur de fréquence et programme d'ordinateur correspondants. Method for filtering a digital signal, frequency synthesizer and corresponding computer program.
Le domaine de l'invention est celui du filtrage de signaux numériques.The field of the invention is that of filtering digital signals.
Le procédé de filtrage selon l'invention a de nombreuses applications . Il peut notamment, mais non exclusivement, être mis en œuvre dans les synthétiseurs de fréquence, utilisés dans des appareils électroniques comme les récepteurs (de radiocommunication ou autres), les générateurs de signaux, les modulateurs, les démodulateurs, les mélangeurs, etc.The filtering method according to the invention has many applications. It can in particular, but not exclusively, be used in frequency synthesizers, used in electronic devices such as receivers (radiocommunication or other), signal generators, modulators, demodulators, mixers, etc.
Plus généralement, il peut s'appliquer dans tous les dispositifs ou systèmes qui utilisent des signaux sinusoïdaux devant posséder une bonne pureté spectrale.More generally, it can be applied in all devices or systems which use sinusoidal signals which must have good spectral purity.
On suppose que le signal d'origine à filtrer est un signal numérique sinusoïdal, comprenant une composante sinusoïdale dominante à laquelle se superposent des signaux parasites.It is assumed that the original signal to be filtered is a sinusoidal digital signal, comprising a dominant sinusoidal component on which parasitic signals are superimposed.
Ce signal numérique d'origine à filtrer est par exemple obtenu avec un système de synthèse de fréquence numérique directe (système SND). Ce système SND peut éventuellement être combiné à un convertisseur numérique / analogique (CNA), si on désire produire un signal analogique.This original digital signal to be filtered is for example obtained with a direct digital frequency synthesis system (SND system). This SND system can possibly be combined with a digital / analog converter (DAC), if one wishes to produce an analog signal.
Il est connu que, lors de la synthèse numérique directe (SND), des signauxIt is known that, during direct digital synthesis (SND), signals
(raies) parasites sont générés en raison des différentes troncatures effectuées sur le nombre de bits utilisés (accumulateur de phase, adressage de la table du sinus et largeur du bus des données), ainsi que par les valeurs non entières du rapport fréquence d'horloge sur fréquence du signal synthétisé.(lines) parasites are generated due to the different truncations performed on the number of bits used (phase accumulator, addressing of the sine table and width of the data bus), as well as by the non-integer values of the clock frequency ratio on frequency of the synthesized signal.
Les solutions connues pour réduire le niveau des signaux parasites consistent soit à limiter l'utilisation du synthétiseur à des fréquences où les parasites ont des niveaux faibles, soit à augmenter le nombre des bits des différents éléments utilisés dans la SND.Known solutions for reducing the level of the parasitic signals consist either in limiting the use of the synthesizer to frequencies where the parasites have low levels, or in increasing the number of the bits of the various elements used in the SND.
La première solution précitée est inacceptable dans les applications où la fréquence doit être variable. La seconde solution précitée est coûteuse et limite la vitesse de traitement.The first solution mentioned above is unacceptable in applications where the frequency must be variable. The second solution mentioned above is expensive and limits the processing speed.
Selon encore une autre technique connue de filtrage, on ajoute une séquence pseudo-aléatoire à la phase du signal (méthode dite "dither method"). Cette autre technique connue est présentée par exemple dans le document ("data sheet") de la société GRAYCHIP INC intitulé : "Multi-standard quad DDC chip" rev 0.3, April 20, 2000. Il y est montré que, dans certains cas, on peut réduire le niveau des raies parasites d'environ 14 dB.According to yet another known filtering technique, a pseudo-random sequence is added to the signal phase (so-called "dither method"). This other known technique is presented for example in the document ("data sheet") of the company GRAYCHIP INC entitled: "Multi-standard quad DDC chip" rev 0.3, April 20, 2000. It is shown there that, in certain cases, the level of the parasitic lines can be reduced by about 14 dB.
Cependant, le potentiel d'amélioration de cette autre technique connue est intrinsèquement limité car elle consiste à répartir l'énergie des parasites dans toute la bande de fréquence.However, the potential for improvement of this other known technique is intrinsically limited since it consists in distributing the energy of the parasites throughout the frequency band.
L'invention a notamment pour objectif de pallier ces différents inconvénients de l'état de la technique.The invention particularly aims to overcome these various drawbacks of the state of the art.
Plus précisément, l'un des objectifs de la présente invention est de fournir un procédé de filtrage d'un signal numérique qui soit simple à mettre en œuvre et peu coûteux en nombre d'opérations, de façon à ne pas nécessiter des temps de calcul élevés et pouvoir être mis en œuvre en temps réel.More specifically, one of the objectives of the present invention is to provide a method of filtering a digital signal which is simple to implement and inexpensive in number of operations, so as not to require computing times high and can be implemented in real time.
Un autre objectif de l'invention est de fournir un tel procédé permettant d'obtenir une amélioration supérieure à 14 dB, et pouvant aller jusqu'à 60 dB, voire au-delà.Another objective of the invention is to provide such a method making it possible to obtain an improvement greater than 14 dB, and which can range up to 60 dB, or even beyond.
Ces différents objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints selon l'invention à l'aide d'un procédé de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons s , i variant de 1 à N, où N est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, le procédé comprenant une étape de filtrage numérique basée sur une simplification d'une matrice Σ apparaissant dans la décomposition en valeurs singulières (SVD) de la matrice de Hankel du signal numérique d'origine.These various objectives, as well as others which will appear subsequently, are achieved according to the invention using a method of filtering an original digital signal, represented by a sequence of samples s, i varying from 1 to N, where N is the number of samples to be processed, the original digital signal comprising a dominant sinusoidal component superimposed on parasitic signals, said method making it possible to reduce the level of the parasitic signals and obtain a filtered digital signal having good spectral quality, the method comprising a digital filtering step based on a simplification of a matrix Σ appearing in the decomposition into singular values (SVD) of the Hankel matrix of the original digital signal.
On notera qu'il n'était pas évident d'utiliser la décomposition SND de la matrice de Hankel d'un signal, dans le présent contexte de filtrage d'un signal numérique sinusoïdal. En effet, c'est une méthode de filtrage connue dans le domaine du traitement des signaux, pour extraire plusieurs composantes sinusoïdales d'un bruit. L'inconvénient majeur de cette méthode est qu'elle est gourmande du point de vue du nombre des opérations à effectuer. Il était donc difficile d'envisager son utilisation lorsqu'une mise en œuvre en temps réel est souhaitée. La présente invention repose sur une simplification de la décomposition en valeurs singulières de la matrice de Hankel du signal, et plus précisément sur une simplification d'une matrice Σ apparaissant dans cette décomposition. Cette simplification s'appuie sur le fait que, dans le présent contexte, le signal d'origine ne comporte, outre le bruit, qu'une composante sinusoïdale dominante.It will be noted that it was not obvious to use the SND decomposition of the Hankel matrix of a signal, in the present context of filtering of a digital sinusoidal signal. Indeed, it is a known filtering method in the field of signal processing, to extract several sinusoidal components of a noise. The major drawback of this method is that it is greedy from the point of view of the number of operations to be performed. It was therefore difficult to envisage its use when a real-time implementation is desired. The present invention is based on a simplification of the decomposition into singular values of the Hankel matrix of the signal, and more precisely on a simplification of a matrix Σ appearing in this decomposition. This simplification is based on the fact that, in the present context, the original signal comprises, in addition to the noise, only a dominant sinusoidal component.
Comme expliqué en détails par la suite, la matrice Σ obtenue après simplification, ∑modifiée, permet d'obtenir une matrice de Hankel filtrée, HflUrée, dont les première et dernière lignes (qui mises bout à bout constituent la séquence de N échantillons "sfiltré;" du signal filtré) peuvent être calculées de façon simple et rapide.As explained in detail below, the matrix Σ obtained after simplification, ∑ modified , makes it possible to obtain a filtered Hankel matrix, H flUrée , the first and last lines of which (placed end to end constitute the sequence of N samples "sfiltered;"of the filtered signal) can be calculated quickly and easily.
De façon avantageuse, la matrice Σ est une matrice n x p s'écrivant :Advantageously, the matrix Σ is a matrix n x p written:
0 0 00 0 0
0 σ 2 0 0 0 0 σ0 σ 2 0 0 0 0 σ
Σ =Σ =
0 0 0 où les éléments σ; sont des valeurs singulières classées dans l'ordre décroissant et correspondent aux puissances des composantes présentes dans le signal numérique d'origine. La simplification de la matrice Σ consiste à annuler toutes les valeurs de σ; sauf la plus grande σ„ correspondant à la composante sinusoïdale dominante du signal numérique d'origine.0 0 0 where the elements σ ; are singular values classified in descending order and correspond to the powers of the components present in the original digital signal. The simplification of the matrix Σ consists in canceling all the values of σ ; except the largest σ „corresponding to the dominant sinusoidal component of the original digital signal.
Ainsi, la matrice Σ obtenue après simplification, ∑modifiée, est très simple avec un seul élément non nul (σ,).Thus, the matrix Σ obtained after simplification, ∑ modified , is very simple with only one nonzero element (σ,).
Avantageusement, la simplification de la matrice Σ consiste en outre à poser σl = 1.Advantageously, the simplification of the matrix Σ also consists in setting σ l = 1.
Il s'agit ici d'une simple question de normalisation.This is a simple question of standardization.
Dans un mode de réalisation préférentiel de l'invention, le procédé comprend les étapes suivantes : obtention d'un vecteur v, dont les composantes vk, k variant de 1 à N/2, sont lesIn a preferred embodiment of the invention, the method comprises the following steps: obtaining a vector v, whose components v k , k varying from 1 to N / 2, are the
N/2 valeurs de la fonction d'auto-corrélation translatée de la séquence d'échantillons s; du signal numérique d'origine ; calcul de scalaires uλ et u2 tels que : N/2N / 2 values of the translated autocorrelation function of the sample sequence s ; the original digital signal; calculation of scalars u λ and u 2 such that: N / 2
»1 = Σ V*»1 = Σ V *
*=1* = 1
JV/2JV / 2
* W2 _ 2 VkSk+N/2* W 2 _ 2 V k S k + N / 2
Jt=l calcul d'une séquence d'échantillons sfiltré;, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = u, vk k = l, 2, 3 ... N/2Jt = l calculation of a sequence of samples sfiltré ;, i varying from 1 to N, representing the filtered digital signal, according to the following equations: * sfiltré k = u, v k k = l, 2, 3 ... N / 2
* sfιltrék+N/2 = u2 vk k = 1 , 2, 3 ... N/2* sfιltré k + N / 2 = u 2 v k k = 1, 2, 3 ... N / 2
De cette façon, le filtrage numérique appliqué au signal numérique d'origine est rapide et peu coûteux en puissance de calcul. Les équations de calcul des scalaires Uj et u2, ainsi que les équations de calcul des N échantillons du signal filtré, résultent d'une simplification, telle que discutée ci- dessus et présentée en détails par la suite, d'une matrice Σ apparaissant dans la décomposition en valeurs singulières (SND) de la matrice de Hankel du signal numérique d'origine. Dans l'ensemble de la présente description (et comme cela apparaît au vu de l'équation (e) (voir ci-après) des composantes vk du vecteur v), on entend par « fonction d'auto-corrélation translatée » la fonction d'auto-corrélation translatée d'une unité et telle que le décalage nul correspond à k=l (au lieu de k=0 dans le cas classique).In this way, the digital filtering applied to the original digital signal is fast and inexpensive in computing power. The scalar calculation equations Uj and u 2 , as well as the calculation equations for the N samples of the filtered signal, result from a simplification, as discussed above and presented in detail below, of a matrix Σ appearing in the decomposition into singular values (SND) of the Hankel matrix of the original digital signal. Throughout this description (and as appears from the equation (e) (see below) of the components v k of the vector v), the expression “translated autocorrelation function” means the autocorrelation function translated by one unit and such that the zero offset corresponds to k = l (instead of k = 0 in the classic case).
De façon avantageuse, l'étape d'obtention du vecteur v consiste à calculer les composantes vk, k variant de 1 à Ν/2, selon l'équation suivante :Advantageously, the step of obtaining the vector v consists in calculating the components v k , k varying from 1 to Ν / 2, according to the following equation:
(JV/2)+l vk = ∑ +*-ι k = 1, 2, 3 ... N/2 où Si* est le complexe conjugué de s;.(JV / 2) + l v k = ∑ + * - ι k = 1, 2, 3 ... N / 2 where Si * is the conjugate complex of s ; .
Ce calcul peut être appliqué dans tous les cas, que l'on connaisse ou non la fréquence du signal numérique d'origine, puisqu'il est effectué à partir des échantillons du signal numérique d'origine.This calculation can be applied in all cases, whether or not the frequency of the original digital signal is known, since it is carried out from the samples of the original digital signal.
Selon une variante avantageuse, le procédé selon la revendication 4, dans laquelle la fréquence du signal numérique d'origine est connue, l'étape d'obtention du vecteur v consiste à calculer N/2 valeurs théoriques de la fonction d'auto-corrélation translatée de la séquence d'échantillons s} du signal numérique d'origine.According to an advantageous variant, the method according to claim 4, in which the frequency of the original digital signal is known, the step of obtaining the vector v consists in calculating N / 2 theoretical values of the translated autocorrelation function of the sequence of samples s } of the original digital signal.
Ainsi, cette variante s'applique lorsqu'on connaît la fréquence du signal numérique d'origine. Ceci est notamment le cas lorsque le signal numérique d'origine résulte d'une synthèse de fréquence numérique directe (SND). Cette variante permet d'obtenir de meilleurs résultats en termes de qualité spectrale.Thus, this variant applies when the frequency of the original digital signal is known. This is particularly the case when the original digital signal results from a direct digital frequency synthesis (SND). This variant makes it possible to obtain better results in terms of spectral quality.
De façon préférentielle, l'étape d'obtention du vecteur v est effectuée une fois pour toutes, pour une fréquence donnée du signal numérique d'origine.Preferably, the step of obtaining the vector v is carried out once and for all, for a given frequency of the original digital signal.
En d'autres termes, le vecteur v ne doit être recalculé qu'en cas de changement de fréquence du signal numérique d'origine.In other words, the vector v should only be recalculated if the frequency of the original digital signal changes.
Dans un mode de réalisation particulier de l'invention, l'étape d'obtention du vecteur v est effectuée de façon préalable plusieurs fois, pour différentes fréquences possibles du signal numérique d'origine, de façon à disposer d'un jeu de vecteurs v associés chacun à une fréquence distincte. Le procédé comprend une étape de stockage du jeu de vecteurs v, et, lors de l'étape de filtrage numérique du signal numérique d'origine possédant une fréquence donnée, l'obtention du vecteur v consiste à lire dans les moyens de stockage le vecteur v associé à ladite fréquence donnée.In a particular embodiment of the invention, the step of obtaining the vector v is carried out beforehand several times, for different possible frequencies of the original digital signal, so as to have a set of vectors v each associated with a separate frequency. The method comprises a step of storing the set of vectors v, and, during the step of digital filtering of the original digital signal having a given frequency, obtaining the vector v consists in reading the vector from the storage means v associated with said given frequency.
Cette variante est particulièrement intéressante si les changements de fréquence sont fréquents (par exemple synthèse d'un signal "chirp"). En effet, elle permet de gagner du temps lors du filtrage du signal numérique d'origine, les vecteurs v ayant été calculés précédemment.This variant is particularly interesting if the frequency changes are frequent (for example synthesis of a "chirp" signal). Indeed, it saves time during the filtering of the original digital signal, the vectors v having been calculated previously.
L'invention concerne également un comprenant des moyens permettant la mise en œuvre du procédé précité.The invention also relates to one comprising means allowing the implementation of the above-mentioned method.
L'invention concerne aussi un programme d'ordinateur, comprenant des séquences d'instructions adaptées à la mise en œuvre d'un procédé tel que précité lorsque ledit programme est exécuté sur un ordinateur.The invention also relates to a computer program, comprising sequences of instructions suitable for implementing a method as mentioned above when said program is executed on a computer.
L'invention concerne encore un produit programme d'ordinateur de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons si5 i variant de 1 àThe invention also relates to a computer program product for filtering an original digital signal, represented by a sequence of samples s i5 i varying from 1 to
N, où N est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, ledit produit programme d'ordinateur comprenant des instructions de code de programme enregistré sur un support utilisable dans un ordinateur comprenant des moyens de programmation lisibles par ordinateur pour effectuer une étape de filtrage numérique basée sur une simplification d'une matrice Σ apparaissant dans la décomposition en valeurs singulières (SND) de la matrice de Hankel du signal numérique d'origine.N, where N is the number of samples to be processed, the original digital signal comprising a dominant sinusoidal component superimposed on parasitic signals, said method allowing the level of the spurious signals to be reduced and a filtered digital signal having good spectral quality to be obtained, said computer program product comprising program code instructions recorded on a medium usable in a computer comprising computer-readable programming means for perform a digital filtering step based on a simplification of a matrix Σ appearing in the decomposition into singular values (SND) of the Hankel matrix of the original digital signal.
L'invention concerne aussi un produit programme d'ordinateur de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons si; i variant de 1 àThe invention also relates to a computer program product for filtering an original digital signal, represented by a sequence of samples s i; i varying from 1 to
Ν, où Ν est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, ledit produit programme d'ordinateur comprenant des instructions de code de programme enregistré sur un support utilisable dans un ordinateur comprenant : des moyens de programmation lisibles par ordinateur pour effectuer une étape d'obtention d'un vecteur v, dont les composantes vk, k variant de 1 à Ν/2, sont les N/2 valeurs de la fonction d'auto-corrélation translatée de la séquence d'échantillons s; du signal numérique d'origine ; des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul de scalaires u} et u2 tels que :Ν, where Ν is the number of samples to be processed, the original digital signal comprising a dominant sinusoidal component superimposed on parasitic signals, said method making it possible to reduce the level of the parasitic signals and obtain a filtered digital signal having good quality spectral, said computer program product comprising program code instructions recorded on a medium usable in a computer comprising: computer-readable programming means for performing a step of obtaining a vector v, the components of which v k , k varying from 1 to Ν / 2, are the N / 2 values of the translated autocorrelation function of the sequence of samples s ; the original digital signal; computer-readable programming means for performing a step of calculating scalars u } and u 2 such as:
N/2N / 2
* wι = ∑vΛ k=\* w ι = ∑vΛ k = \
Figure imgf000008_0001
- des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul d'une séquence d'échantillons sfiltré;, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = u, vk k = 1, 2, 3 ... N/2 * sfiltrék+N/2 = u2 vk k = 1, 2, 3 ... N/2
Figure imgf000008_0001
- computer-readable programming means for performing a step of calculating a sequence of sfiltered samples ;, i varying from 1 to N, representing the filtered digital signal, according to the following equations: * sfiltered k = u, v k k = 1, 2, 3 ... N / 2 * sfiltered k + N / 2 = u 2 v k k = 1, 2, 3 ... N / 2
(produit programme d'ordinateur).(computer program product).
D'autres caractéristiques et avantagés de l'invention apparaîtront à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donné à titre d'exemple indicatif et non limitatif, et des dessins annexés, dans lesquels : la figure 1 présente un organigramme simplifié d'un mode de réalisation particulier du procédé de filtrage de signal numérique selon l'invention ; la figure 2 est un synoptique illustrant la mise en œuvre d'un mode de réalisation particulier du procédé de filtrage selon l'invention ; - la figure 3 présente le spectre d'un exemple de signal numérique d'origine, généré par synthèse numérique directe ; les figures 4 à 6 présentent chacune le spectre du signal numérique d'origine de la figure 3, après filtrage selon un mode de réalisation particulier de la présente invention, par blocs de 512 points (fig.4), 2048 points (fig.5) et 4096 points (fig.6) respectivement.Other features and advantages of the invention will appear on reading the following description of a preferred embodiment of the invention, given by way of non-limiting example, and the accompanying drawings, in which: Figure 1 shows a simplified flowchart of a particular embodiment of the digital signal filtering method according to the invention; FIG. 2 is a block diagram illustrating the implementation of a particular embodiment of the filtering method according to the invention; - Figure 3 shows the spectrum of an example of original digital signal, generated by direct digital synthesis; Figures 4 to 6 each show the spectrum of the original digital signal of Figure 3, after filtering according to a particular embodiment of the present invention, by blocks of 512 points (fig.4), 2048 points (fig.5 ) and 4096 points (fig. 6) respectively.
L'invention concerne donc un procédé de filtrage d'un signal numérique d'origine.The invention therefore relates to a method of filtering an original digital signal.
Comme illustré sur l'organigramme simplifié de la figure 1, on suppose dans la suite de la description que le signal numérique d'origine résulte d'une étape (1) de synthèse permettant d'obtenir un signal numérique d'origine (deux voies I et Q quadrature), représenté par une séquence d'échantillons S;, i variant de 1 à N, où N est le nombre d'échantillons à traiter.As illustrated in the simplified flow diagram of FIG. 1, it is assumed in the following description that the original digital signal results from a synthesis step (1) making it possible to obtain an original digital signal (two channels I and Q quadrature), represented by a sequence of samples S ;, i varying from 1 to N, where N is the number of samples to be processed.
Cette étape (1) de synthèse consiste par exemple en la mise en œuvre d'une synthèse de fréquence numérique directe (SND). La technique SND est bien connue de l'homme du métier et ne sera pas décrite plus en détails ci-après. On notera qu'avec cette technique, on connaît la fréquence du signal synthétisé. Il est clair cependant que la présente invention s'applique que l'on connaisse ou non la fréquence du signal numérique d'origine.This synthesis step (1) consists for example in the implementation of a direct digital frequency synthesis (SND). The SND technique is well known to those skilled in the art and will not be described in more detail below. It will be noted that with this technique, the frequency of the synthesized signal is known. It is clear however that the present invention applies whether or not the frequency of the original digital signal is known.
Optionnellement, si on souhaite obtenir un signal analogique possédant une grande pureté spectrale, le filtrage selon le procédé de l'invention (2) est suivi d'une étape (3) de conversion numérique/analogique. Dans le mode de réalisation particulier illustré sur la figure 1, le filtrage numérique (2) selon le procédé de l'invention comprend : une étape (21) d'obtention d'un vecteur v, dont les composantes vk, k variant de 1 à N/2, sont les N/2 valeurs de la fonction d'auto-corrélation translatée de la séquence d'échantillons S; du signal numérique d'origine ; une étape (22) de calcul de scalaires Uj et u2 tels que :Optionally, if it is desired to obtain an analog signal having high spectral purity, the filtering according to the method of the invention (2) is followed by a step (3) of digital / analog conversion. In the particular embodiment illustrated in FIG. 1, the digital filtering (2) according to the method of the invention comprises: a step (21) of obtaining a vector v, whose components v k , k varying from 1 to N / 2, are the N / 2 values of the translated autocorrelation function of the sequence of samples S; the original digital signal; a step (22) of calculating scalars Uj and u 2 such as:
NI2 wι = ∑ * (a)NI2 w ι = ∑ * (a)
4=14 = 1
NI2NI 2
U2 = ΣVkSk+N,2 Φ) k=\ une étape (23) de calcul d'une séquence d'échantillons sfiltré;, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : U 2 = Σ V k S k + N, 2 Φ) k = \ a step (23) of calculating a sequence of samples sfiltré ;, i varying from 1 to N, representing the filtered digital signal, according to the equations following:
* sfiltrék = Uj vk k = 1, 2, 3 ... N/2 (c)* sfiltered k = Uj v k k = 1, 2, 3 ... N / 2 (c)
* sfiltrék+N/2 = u2 vk k = l, 2, 3 ... N/2 (d)* sfiltered k + N / 2 = u 2 v k k = l, 2, 3 ... N / 2 (d)
Les étapes (22) de calcul de scalaires U[ et u2 et (23) de calcul d'une séquence d'échantillons sfiltré; nécessitent 2N multiplications complexes et N-2 additions complexes. Ainsi, pour traiter N = 512 points par exemple, il faut environ 1024 multiplications et 510 additions. Le temps de traitement d'une séquence de N points dépend linéairement de N et le procédé selon l'invention est donc particulièrement intéressant du point de vue du temps de calcul.The steps (22) of calculating scalars U [and u 2 and (23) of calculating a sequence of samples filtered; require 2N complex multiplications and N-2 complex additions. Thus, to treat N = 512 points for example, it takes about 1024 multiplications and 510 additions. The processing time of a sequence of N points depends linearly on N and the method according to the invention is therefore particularly advantageous from the point of view of the computation time.
L'étape (21) d'obtention du vecteur v peut être effectuée de deux façons différentes,.The step (21) of obtaining the vector v can be carried out in two different ways ,.
Dans le cas général, applicable notamment si on ne connaît pas la fréquence du signal synthétisé (et a fortiori si on la connaît), l'étape (21) d'obtention du vecteur v consiste à calculer les composantes vk, k variant de 1 à N/2, selon l'équation suivante :In the general case, applicable in particular if the frequency of the synthesized signal is not known (and a fortiori if it is known), step (21) of obtaining the vector v consists in calculating the components v k , k varying from 1 to N / 2, according to the following equation:
(W/2)+l v* = ∑ sιs k-ι k = l, 2, 3 ... N/2 (e)(W / 2) + l v * = ∑ s ι s k-ι k = l, 2, 3 ... N / 2 (e)
1=1 où S;* est le complexe conjugué de S;.1 = 1 where S; * is the conjugate complex of S ;.
Dans ce cas général, le calcul du vecteur v nécessite (N2/4+N/2) multiplications complexes et N2/4 additions complexes. Ainsi, pour N = 512 par exemple, il faut environ 66 103 multiplications et 66 103 additions. Comme cela est indiqué ci-après, ce calcul peut être effectué une fois pour toutes.In this general case, the calculation of the vector v requires (N 2/4 + N / 2) complex multiplications and N 2/4 complex additions. So, for N = 512 for example, it takes about 66 10 3 multiplications and 66 10 3 additions. As shown below, this calculation can be done once and for all.
Une variante peut être envisagée dans le cas particulier où on connaît la fréquence du signal synthétisé. C'est par exemple le cas si l'étape (1) de synthèse consiste en la mise en œuvre d'une synthèse de fréquence numérique directe (SND).A variant can be envisaged in the particular case where the frequency of the synthesized signal is known. This is for example the case if the synthesis step (1) consists in the implementation of a direct digital frequency synthesis (SND).
Selon cette variante, l'étape (21) d'obtention du vecteur v consiste à calculer N/2 valeurs théoriques de la fonction d'auto-corrélation translatée de la séquence d'échantillons S; du signal numérique d'origine. On obtient alors de meilleurs résultats en termes de qualité spectrale. On rappelle que la fonction d'auto-corrélation translatée du signal synthétisé, qui est un signal sinusoïdal, est donnée par : vk = exp £j2πF(k-l)] où F est la fréquence du signal synthétisé et k variant de 1 à N/2, les N/2 instants d'échantillonnage. On présente maintenant, en relation avec le synoptique de la figure 2, la mise en œuvre d'un mode de réalisation particulier du procédé de filtrage selon l'invention.According to this variant, step (21) of obtaining the vector v consists in calculating N / 2 theoretical values of the translated autocorrelation function of the sequence of samples S; of the original digital signal. We then obtain better results in terms of spectral quality. Recall that the translated auto-correlation function of the synthesized signal, which is a sinusoidal signal, is given by: v k = exp £ j2πF (kl)] where F is the frequency of the synthesized signal and k varying from 1 to N / 2, the N / 2 sampling instants. We now present, in relation to the block diagram of FIG. 2, the implementation of a particular embodiment of the filtering method according to the invention.
On observe que les équations (a) et (b) se calculent de la même façon, et qu'il en est de même pour les équations (c) et (d). Du point de vue réalisation, il suffit donc de concevoir un circuit calculant le signal filtré pour k=l à N/2, et le même circuit servira pour k=(N/2)+l à N.We observe that equations (a) and (b) are calculated in the same way, and that it is the same for equations (c) and (d). From an implementation point of view, it is therefore sufficient to design a circuit calculating the filtered signal for k = l at N / 2, and the same circuit will be used for k = (N / 2) + l at N.
Dans le montage présenté en figure 2, on suppose qu'un compteur 8 est cadencé par une horloge H et possède une capacité N/2. Les sorties du compteur 8 permettent d'adresser une mémoire RAM 9 qui contient les N/2 composantes du vecteur v, qui sont supposées avoir été calculées au préalable (voir discussion détaillée ci-après). Le nombre Uj est calculé par l'association d'un premier multiplicateur 4 et d'un accumulateur 5. Plus précisément, à l'instant i, la valeur v; est présentée en entrée du premier multiplicateur 4 et elle est multipliée par S;. L'opération est effectuée pour i variant de 1 à N/2. Pour i=N/2, l'accumulateur 5 contient la valeur ux (équation (a)).In the assembly presented in FIG. 2, it is assumed that a counter 8 is clocked by a clock H and has a capacity N / 2. The outputs of the counter 8 make it possible to address a RAM memory 9 which contains the N / 2 components of the vector v, which are assumed to have been calculated beforehand (see detailed discussion below). The number Uj is calculated by the association of a first multiplier 4 and an accumulator 5. More precisely, at time i, the value v ; is presented at the input of the first multiplier 4 and it is multiplied by S ;. The operation is performed for i varying from 1 to N / 2. For i = N / 2, the accumulator 5 contains the value u x (equation (a)).
Cette valeur est stockée dans une mémoire 6 par le signal de sortie du décodeur 7, lorsque le compteur 8 a atteint sa valeur maximale. Le signal de sortie du décodeur 7, retardé par un élément référencé 11, provoque ensuite la remise à zéro de l'accumulateur 5. La valeur de Uj est ensuite utilisée pour calculer le signal filtré "sfiltrék", pour k=l à N/2 (équation (c)), dans le second multiplicateur 10. Durant cette phase, la valeur u2 est calculée par le premier multiplicateur 4 (équation (b). Lorsque la valeur de u2 est disponible, elle est utilisée dans le second multiplicateur 10 pour générer les N/2 éléments suivants du signal filtré, selon l'équation (d).This value is stored in a memory 6 by the output signal from the decoder 7, when the counter 8 has reached its maximum value. The output signal from the decoder 7, delayed by an element referenced 11, then causes the accumulator to be reset to zero. 5. The value of U j is then used to calculate the filtered signal "sfiltré k ", for k = l at N / 2 (equation (c)), in the second multiplier 10. During this phase, the value u 2 is calculated by the first multiplier 4 (equation (b). When the value of u 2 is available, it is used in the second multiplier 10 to generate the next N / 2 elements of the filtered signal, according to equation (d).
Comme indiqué ci-dessus, les N/2 composantes du vecteur v peuvent être calculées au préalable, une fois pour toutes, pour une fréquence donnée du signal numérique d'origine. Dans ce cas, le vecteur v est stocké et il ne doit être recalculé qu'en cas de changement de fréquence du signal synthétisé. Si les changements de fréquence sont fréquents (par exemple synthèse d'un signal "chirp"), on peut envisager une variante, pour gagner du temps, consistant à calculer au préalable plusieurs vecteurs v, associés chacun à une fréquence particulière possible du signal synthétisé, et à stocker ce jeu de vecteurs v dans une mémoire (RAM, ROM, EPROM, ...). Ainsi, lors du filtrage numérique (2), l'obtention du vecteur v consiste à lire dans cette mémoire le vecteur v, parmi la pluralité de vecteurs stockés, associé à la fréquence du signal numérique d'origine que l'on souhaite filtrer.As indicated above, the N / 2 components of the vector v can be calculated beforehand, once and for all, for a given frequency of the original digital signal. In this case, the vector v is stored and it should not be recalculated unless the frequency of the synthesized signal changes. If the frequency changes are frequent (for example synthesis of a "chirp" signal), one can envisage a variant, to save time, consisting in calculating beforehand several vectors v, each associated with a particular possible frequency of the synthesized signal , and to store this set of vectors v in a memory (RAM, ROM, EPROM, ...). Thus, during digital filtering (2), obtaining the vector v consists in reading in this memory the vector v, among the plurality of stored vectors, associated with the frequency of the original digital signal which it is desired to filter.
Les performances du procédé selon l'invention, dans le mode de réalisation présenté ci-dessus en relation avec les figures 1 et 2, ont été évaluées à l'aide d'un programme simulant un générateur de signal SND. La figure 3 illustre le spectre FFT d'un exemple de signal généré à la fréquenceThe performances of the method according to the invention, in the embodiment presented above in relation to FIGS. 1 and 2, were evaluated using a program simulating an SND signal generator. Figure 3 illustrates the FFT spectrum of an example signal generated at the frequency
F=l l,33 MHz, pour une fréquence d'horloge FH=64 MHz. La séquence analysée comporte 16 348 points et elle est apodisée par une fenêtre de Kaiser. La raie parasite la plus forte se trouve à -60 dBc et le niveau moyen des parasites se situe entre -70 et -80 dBc. Les figures 4 à 6 présentent chacune le spectre du signal numérique d'origine de la figure 3, après filtrage selon l'invention, par blocs de 512 points (fig.4), 2048 points (fig.5) et 4096 points (fig.6) respectivement. On observe que le niveau des raies parasites diminue progressivement lorsque la fréquence s'éloigne de celle de la porteuse. On observe également que le signal devient de plus en plus pur lorsque le nombre de points traités augmente. Le degré d'amélioration du spectre dépend légèrement de la fréquence choisie, mais les simulations montrent que le traitement sur 2 048 points permet d'obtenir une pureté spectrale voisine de 100-110 dB quelle que soit la fréquence synthétisée.F = ll, 33 MHz, for a clock frequency F H = 64 MHz. The analyzed sequence has 16,348 points and is apodized by a Kaiser window. The strongest parasitic line is at -60 dBc and the average noise level is between -70 and -80 dBc. Figures 4 to 6 each show the spectrum of the original digital signal of Figure 3, after filtering according to the invention, in blocks of 512 points (fig.4), 2048 points (fig.5) and 4096 points (fig .6) respectively. It is observed that the level of the parasitic lines gradually decreases when the frequency moves away from that of the carrier. It is also observed that the signal becomes increasingly pure when the number of points processed increases. The degree of improvement of the spectrum depends slightly on the frequency chosen, but the simulations show that the processing on 2048 points makes it possible to obtain a spectral purity close to 100-110 dB whatever the frequency synthesized.
On présente ci-après le cheminement intellectuel de l'inventeur pour aboutir aux équations précitées.The intellectual journey of the inventor is presented below to arrive at the above equations.
On suppose que le signal comprend N valeurs s≈fsj s2 s3 s4 ... sN}. La matrice de Hankel de ce signal est une matrice n x p, avec p=N/2 et n=(N/2)+l=p+l, formée de la façon suivante :We assume that the signal includes N values s≈fsj s 2 s 3 s 4 ... s N }. The Hankel matrix of this signal is an nxp matrix, with p = N / 2 and n = (N / 2) + l = p + l, formed as follows:
Figure imgf000013_0001
Figure imgf000013_0001
Cette écriture met en évidence le fait que l'on retrouve la séquence initiale en prenant la lère ligne de H, suivie de la dernière ligne.This writing highlights the fact that we find the initial sequence by taking the 1st line of H, followed by the last line.
La décomposition SND (décomposition en valeurs singulières) de cette matrice de Hankel du signal s'écrit :The SND (decomposition into singular values) decomposition of this Hankel matrix of the signal is written:
H = UΣVH H = UΣV H
où U et N sont des matrices n x n et p x p respectivement, formées de vecteurs singuliers,where U and N are matrices n x n and p x p respectively, formed of singular vectors,
NH indique la transposée hermitienne de V et Σ est une matrice n x p composée des valeurs singulières classées dans l'ordre décroissant : 0 . 0 0 0 . 0N H indicates the Hermitian transpose of V and Σ is a matrix nxp composed of the singular values classified in descending order: 0. 0 0 0. 0
0 00 0
Σ =Σ =
0 00 0
Figure imgf000014_0001
Figure imgf000014_0001
Les valeurs σ; correspondent aux puissances des composantes présentes dans le signal. Les valeurs les plus faibles correspondent au bruit.The σ values ; correspond to the powers of the components present in the signal. The lowest values correspond to noise.
Le principe général de ce type de filtrage consiste à mettre les valeurs qui correspondent au bruit à zéro, afin de l'éliminer, puis d'effectuer le produit des matrices pour obtenir une matrice de Hankel filtrée :The general principle of this type of filtering consists in putting the values which correspond to noise to zero, in order to eliminate it, then in performing the product of the matrices to obtain a filtered Hankel matrix:
"filtrée ~ U^1 modifiée^"filtered ~ U ^ 1 modified ^
Cette méthode de filtrage, connue en elle-même, donne de bons résultats. Son inconvénient est qu'elle est lourde du point de vue temps de calcul.This filtering method, known in itself, gives good results. Its disadvantage is that it is heavy from the point of view of computation time.
Dans le cadre de la présente invention, on simplifie la matrice Σ en annulant toutes les valeurs de σ{ sauf la plus grande σ,, correspondant à la composante sinusoïdale dominante du signal numérique d'origine, et on pose σj = 1.In the context of the present invention, the matrix Σ is simplified by canceling all the values of σ { except the largest σ ,, corresponding to the dominant sinusoidal component of the original digital signal, and we set σj = 1.
Dans ces conditions la matrice ∑modiflée devient simple avec un seul élément non nul égal à 1, les calculs se simplifient et on obtient : "i.Vn
Figure imgf000015_0001
"llVpl
Under these conditions the modified matrix ∑ becomes simple with a single non-zero element equal to 1, the calculations are simplified and we obtain: "i.Vn
Figure imgf000015_0001
"llVpl
* * * *
M21V11 M21V21 «21V„1 M 21 V 11 M 21 V 21 "21 V „ 1
H filtréeH filtered
M«ιvπ "Λ U„lVpl Mv π" Λ U „l V pl
Pour retrouver le signal filtré, il suffit de calculer la première et la dernière ligne de Ηflltrée. On constate sur la matrice précédente que seules les deux composantes uu et unl de la matrice U doivent être connues et que seule la première ligne vπ *, v21 *, ...vpl * de la matrice NH doit être connue.To find the filtered signal, it suffices to calculate the first and the last line of Η filtered . One notes on the preceding matrix that only the two components u u and u nl of the matrix U must be known and that only the first line v π * , v 21 * , ... v pl * of the matrix N H must be known.
Les composantes vu, v21, ...vpl peuvent être calculées à l'aide du produit matriciel suivant :The components v u , v 21 , ... v pl can be calculated using the following matrix product:
v = HHH{:,\) où HH est la transposée hermitienne de H et H(:,l) représente la première colonne de H.v = H H H {:, \) where H H is the Hermitian transpose of H and H (:, l) represents the first column of H.
Cette équation correspond à l'équation (e) précitée, utilisée lors de l'étape (21) d'obtention du vecteur v.This equation corresponds to the above-mentioned equation (e), used during step (21) of obtaining the vector v.
Pour des raisons de vitesse de calcul, il a fallu trouver une astuce pour calculer uπ et unl rapidement, sans avoir à calculer la matrice U entière. Après étude, l'inventeur a trouvé que uπ et unl pouvaient être obtenus par :For reasons of speed of computation, it was necessary to find a trick to compute u π and u nl quickly, without having to compute the whole matrix U. After study, the inventor found that u π and u nl could be obtained by:
NI2 wπ = ∑ VΛ k=\ NI2 k = l,2,3...N/2NI2 w π = ∑ V Λ k = \ NI2 k = l, 2,3 ... N / 2
«„1 = Σ VkSk+N/2 k=\"„ 1 = Σ V k S k + N / 2 k = \
Ainsi, uuet unl correspondent respectivement aux scalaires
Figure imgf000015_0002
et u2 précités. Ces deux équations correspondent aux équations (a) et (b) utilisées lors de l'étape référencée 22 sur la figure 1. On dispose maintenant de tous les éléments pour passer à l'étape (23) de filtrage proprement dit, qui consiste à calculer la première et la dernière ligne de Hfiltré pour obtenir le signal filtré par l'équation :
Thus, u u and u nl correspond respectively to the scalars
Figure imgf000015_0002
and u 2 above. These two equations correspond to equations (a) and (b) used during the step referenced 22 in FIG. 1. We now have all the elements to go to the filtering step (23) proper, which consists in calculating the first and last line of filtered H to obtain the signal filtered by the equation:
s β,tré = nv" > u„ιv" } Cette équation correspond aux équations (c) et (d) utilisées lors de l'étape référencée 23 sur la figure 1. s β , t r é = n v "> u „ ι v "} This equation corresponds to equations (c) and (d) used during the step referenced 23 in FIG. 1.

Claims

REVENDICATIONS
1. Procédé de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons s„ i variant de 1 à N, où N est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, caractérisé en ce que le procédé comprend une étape de filtrage numérique basée sur une simplification d'une matrice Σ apparaissant dans la décomposition en valeurs singulières (SND) de la matrice de Hankel du signal numérique d'origine.1. Method for filtering an original digital signal, represented by a sequence of samples s„ i varying from 1 to N, where N is the number of samples to be processed, the original digital signal comprising a component dominant sinusoidal superimposed on parasitic signals, said method making it possible to reduce the level of parasitic signals and obtain a filtered digital signal having good spectral quality, characterized in that the method comprises a digital filtering step based on a simplification of a matrix Σ appearing in the singular value decomposition (SND) of the Hankel matrix of the original digital signal.
2. Procédé selon la revendication 1, caractérisé en ce que la matrice Σ est une matrice n x p s'écrivant : σ> 0 • 0 02. Method according to claim 1, characterized in that the matrix Σ is an n x p matrix written as: σ> 0 • 0 0
0 σ2 0 . 00 σ 2 0 . 0
0 0 σ,0 0 σ,
Σ = σ.Σ = σ.
0 0 . . 0 où les éléments σ, sont des valeurs singulières classées dans l'ordre décroissant et correspondent aux puissances des composantes présentes dans le signal numérique d'origine, et en ce que la simplification de la matrice Σ consiste à annuler toutes les valeurs de σ, sauf la plus grande σ correspondant à la composante sinusoïdale dominante du signal numérique d'origine.0 0 . . 0 where the elements σ are singular values classified in descending order and correspond to the powers of the components present in the original digital signal, and in that the simplification of the matrix Σ consists of canceling all the values of σ, except the largest σ corresponding to the dominant sinusoidal component of the original digital signal.
3. Procédé selon la revendication 2, caractérisé en ce que la simplification de la matrice Σ consiste en outre à poser σ1 = l.3. Method according to claim 2, characterized in that the simplification of the matrix Σ further consists of setting σ 1 = l.
4. Procédé de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons s„ i variant de 1 à Ν, où Ν est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, caractérisé en ce que le procédé comprend les étapes suivantes :
Figure imgf000018_0001
4. Method for filtering an original digital signal, represented by a sequence of samples s„ i varying from 1 to Ν, where Ν is the number of samples to be processed, the original digital signal comprising a component dominant sinusoidal superimposed on parasitic signals, said method making it possible to reduce the level of parasitic signals and obtain a filtered digital signal having good spectral quality, characterized in that the method comprises the following steps:
Figure imgf000018_0001
obtention d'un vecteur v, dont les composantes vk, k variant de 1 à N/2, sont les N/2 valeurs de la fonction d'auto-corrélation translatée de la séquence d'échantillons Si du signal numérique d'origine ; calcul de scalaires Uj et u2 tels que :obtaining a vector v, whose components v k , k varying from 1 to N/2, are the N/2 values of the auto-correlation function translated from the sequence of samples Si of the original digital signal ; calculation of scalars Uj and u 2 such that:
Figure imgf000018_0002
Figure imgf000018_0002
NI2NI2
* U 2 = Σ V W/2 k=\ calcul d'une séquence d'échantillons sfiltré,, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = u, vk k = 1, 2, 3 ... N/2 * sfiltrék+N/2 = u2 vk k = 1 , 2, 3 ... N/2* U 2 = Σ V W/2 k=\ calculation of a sequence of sfiltered samples,, i varying from 1 to N, representing the filtered digital signal, according to the following equations: * sfiltered k = u, v k k = 1, 2, 3 ... N/2 * sfiltered k+N/2 = u 2 v k k = 1, 2, 3 ... N/2
5. Procédé selon la revendication 4, caractérisé en ce que l'étape d'obtention du vecteur v consiste à calculer les composantes vk, k variant de 1 à N/2, selon l'équation suivante :5. Method according to claim 4, characterized in that the step of obtaining the vector v consists of calculating the components v k , k varying from 1 to N/2, according to the following equation:
(Λf/2)+l v* = ∑ *A+*-ι k = l, 2, 3 ... N/2 ι=l où s * est le complexe conjugué de s,.(Λf/2)+lv* = ∑ *A + *-ι k = l, 2, 3 ... N/2 ι=l where s * is the conjugate complex of s,.
6. Procédé selon la revendication 4, la fréquence du signal numérique d'origine étant connue, caractérisé en ce que l'étape d'obtention du vecteur v consiste à calculer N/2 valeurs théoriques de la fonction d'auto-corrélation translatée de la séquence d'échantillons s, du signal numérique d'origine. 6. Method according to claim 4, the frequency of the original digital signal being known, characterized in that the step of obtaining the vector v consists of calculating N/2 theoretical values of the auto-correlation function translated from the sequence of samples s, of the original digital signal.
7. Procédé selon l'une quelconque des revendications 4 à 6, caractérisé en ce que l'étape d'obtention du vecteur v est effectuée une fois pour toutes, pour une fréquence donnée du signal numérique d'origine.7. Method according to any one of claims 4 to 6, characterized in that the step of obtaining the vector v is carried out once and for all, for a given frequency of the original digital signal.
8. Procédé selon l'une quelconque des revendications 4 à 7, caractérisé en ce que l'étape d'obtention du vecteur v est effectuée de façon préalable plusieurs fois, pour différentes fréquences possibles du signal numérique d'origine, de façon à disposer d'un jeu de vecteurs v associés chacun à une fréquence distincte, en ce que le procédé comprend une étape de stockage du jeu de vecteurs v, et en ce que, lors de l'étape de filtrage numérique du signal numérique d'origine possédant une fréquence donnée, l'obtention du vecteur v consiste à lire dans les moyens de stockage le vecteur v associé à ladite fréquence donnée.8. Method according to any one of claims 4 to 7, characterized in that the step of obtaining the vector v is carried out several times beforehand, for different possible frequencies of the original digital signal, so as to have a set of vectors v each associated with a distinct frequency, in that the method comprises a step of storing the set of vectors v, and in that, during the step of digital filtering of the original digital signal having a given frequency, obtaining the vector v consists of reading in the storage means the vector v associated with said given frequency.
9. Synthétiseur de fréquence, caractérisé en ce qu'il comprend des moyens permettant la mise en œuvre du procédé selon l'une quelconque des revendications 1 à9. Frequency synthesizer, characterized in that it comprises means allowing the implementation of the method according to any one of claims 1 to
8.8.
10. Programme d'ordinateur, caractérisé en ce que ledit programme comprend des séquences d'instructions adaptées à la mise en œuvre d'un procédé selon l'une quelconque des revendications 1 à 8 lorsque ledit programme est exécuté sur un ordinateur.10. Computer program, characterized in that said program comprises sequences of instructions adapted to the implementation of a method according to any one of claims 1 to 8 when said program is executed on a computer.
11. Produit programme d'ordinateur de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons S;, i variant de 1 à N, où N est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, ledit produit programme d'ordinateur comprenant des instructions de code de programme enregistré sur un support utilisable dans un ordinateur comprenant des moyens de programmation lisibles par ordinateur pour effectuer une étape de filtrage numérique basée sur une simplification d'une matrice Σ apparaissant dans la décomposition en valeurs singulières (SND) de la matrice de Hankel du signal numérique d'origine.11. Computer program product for filtering an original digital signal, represented by a sequence of samples S;, i varying from 1 to N, where N is the number of samples to be processed, the digital signal d origin comprising a dominant sinusoidal component superimposed on parasitic signals, said method making it possible to reduce the level of parasitic signals and obtain a filtered digital signal having good spectral quality, said computer program product comprising program code instructions recorded on a medium usable in a computer comprising computer-readable programming means for carrying out a digital filtering step based on a simplification of a matrix Σ appearing in the singular value decomposition (SND) of the Hankel matrix of the digital signal of origin.
12. Produit programme d'ordinateur de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons si; i variant de 1 à Ν, où Ν est le nombre d'échantillons à traiter, le signal numérique d'origine comprenant une composante sinusoïdale dominante superposée à des signaux parasites, ledit procédé permettant de diminuer le niveau des signaux parasites et obtenir un signal numérique filtré présentant une bonne qualité spectrale, ledit produit programme d'ordinateur comprenant des instructions de code de programme enregistré sur un support utilisable dans un ordinateur comprenant : des moyens de programmation lisibles par ordinateur pour effectuer une étape d'obtention d'un vecteur v, dont les composantes vk, k variant de 1 à N/2, sont les N/2 valeurs de la fonction d'auto-corrélation translatée de la séquence d'échantillons S; du signal numérique d'origine ; des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul de scalaires ut et u2 tels que :12. Computer program product for filtering an original digital signal, represented by a sequence of samples s i; i varying from 1 to Ν, where Ν is the number of samples to be processed, the original digital signal comprising a dominant sinusoidal component superimposed on parasitic signals, said method making it possible to reduce the level of the parasitic signals and obtain a digital signal filtered having good spectral quality, said computer program product comprising program code instructions recorded on a medium usable in a computer comprising: computer-readable programming means for carrying out a step of obtaining a vector v, whose components v k , k varying from 1 to N/2, are the N/2 values of the translated auto-correlation function of the sample sequence S; of the original digital signal; computer-readable programming means for carrying out a step of calculating scalars u t and u 2 such that:
NI2NI2
U, =Σ V*U, =Σ V*
4=14=1
Figure imgf000020_0001
des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul d'une séquence d'échantillons sfiltréi5 i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes :
Figure imgf000020_0001
computer-readable programming means for carrying out a step of calculating a sequence of sfiltered samples i5 i varying from 1 to N, representing the filtered digital signal, according to the following equations:
* sfiltrék = Ui vk k = 1, 2, 3 ... N/2* sfiltered k = Ui v k k = 1, 2, 3 ... N/2
* sfiltrék+N/2 = u2 vk k = 1 , 2, 3 ... N/2 * sfiltered k+N/2 = u 2 v k k = 1, 2, 3 ... N/2
PCT/FR2003/000180 2002-01-22 2003-01-20 Digital signal filtering method, a frequency synthesiser and the corresponding computer programs WO2003063350A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR02/00789 2002-01-22
FR0200789A FR2835071A1 (en) 2002-01-22 2002-01-22 METHOD FOR FILTERING A DIGITAL SIGNAL, FREQUENCY SYNTHESIZER AND CORRESPONDING COMPUTER PROGRAM

Publications (2)

Publication Number Publication Date
WO2003063350A2 true WO2003063350A2 (en) 2003-07-31
WO2003063350A3 WO2003063350A3 (en) 2004-04-22

Family

ID=27589553

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2003/000180 WO2003063350A2 (en) 2002-01-22 2003-01-20 Digital signal filtering method, a frequency synthesiser and the corresponding computer programs

Country Status (2)

Country Link
FR (1) FR2835071A1 (en)
WO (1) WO2003063350A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113406385A (en) * 2021-06-17 2021-09-17 哈尔滨工业大学 Periodic signal fundamental frequency determination method based on time domain space

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DIMONTE C L ET AL: "Tracking the frequencies of superimposed time-varying harmonics" ICASSP, vol. 5, avril 1990 (1990-04), pages 2539-2542, XP010004173 *
S ET AL: "A QRS estimator using linear prediction approach" SIGNAL PROCESSING, AMSTERDAM, NL, vol. 72, no. 1, 4 janvier 1999 (1999-01-04), pages 15-22, XP004151089 ISSN: 0165-1684 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113406385A (en) * 2021-06-17 2021-09-17 哈尔滨工业大学 Periodic signal fundamental frequency determination method based on time domain space
CN113406385B (en) * 2021-06-17 2022-01-21 哈尔滨工业大学 Periodic signal fundamental frequency determination method based on time domain space

Also Published As

Publication number Publication date
WO2003063350A3 (en) 2004-04-22
FR2835071A1 (en) 2003-07-25

Similar Documents

Publication Publication Date Title
EP2603862B1 (en) Method for analyzing signals providing instantaneous frequencies and sliding fourier transforms, and device for analyzing signals
FR2587819A1 (en) DEVICE FOR CALCULATING A DISCRETE, SLIDING, NON-RECURSIVE FOURIER TRANSFORMATION AND APPLICATION THEREOF TO A RADAR SYSTEM
FR2702902A1 (en) Digital intermediate frequency receiver and baseband filtering method implemented in this receiver.
CA1263756A (en) Device for calculating discrete fourier transforms and its application to pulse compressions in a radar system
EP0709959B1 (en) Correction of a frequency offset
WO2010029225A1 (en) System for the multicarrier digital transmission of a signal using banks of filters and the preloading of memories for initialization
WO2011023917A1 (en) Wideband transceiver device for transmitting and receiving signals from a channel selected in dynamically spread bandwidth
EP0969349B1 (en) Digital signal synthesiser
EP1782536B1 (en) Method of generating a digital signal that is representative of match errors in an analogue-to-digital conversion system with time interleaving, and an analogue-to-digital converter with time interleaving using same
WO2003063350A2 (en) Digital signal filtering method, a frequency synthesiser and the corresponding computer programs
EP3729299B1 (en) Digital interpolation filter, corresponding rhythm changing device and receiving equipment
FR2716312A1 (en) Continuous phase modulation device by phase lock loop frequency synthesizer
EP1742435A2 (en) Estimation of the amplitude of a noisy binary signal
EP0476592A2 (en) Address generator for the data storage of a processor
EP0225218B1 (en) Frequency synthesis method and synthesis apparatus using this method
FR2759514A1 (en) DIGITAL DEVICE AND METHOD FOR FILTERING, DECIMATING, AND TRANSPOSING DISTRIBUTED BASE BAND, AND DIGITAL DEMODULATOR THEREOF
FR2832568A1 (en) SAMPLING FREQUENCY DIGITAL CONVERTER
WO2018115139A2 (en) Device for generating a modulated digital signal and system for generating a modulated analog signal
EP0831626B1 (en) Method and system for determining a carrier frequency error
EP0740414A1 (en) Programmable delay device for analog signals and corresponding programmable acoustic antenna
FR2668319A1 (en) METHOD FOR MODIFYING RESPONSE TIMES OF A SOFTWARE FILTER
EP0989669B1 (en) Digital frequency generator
EP0623867A1 (en) Method and device for the generation of a frequency controlled signal
EP1714273A1 (en) Method for restoring partials of a sound signal
FR2536541A1 (en) Simplified spectral analysis system using phases

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP