Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DIGITAL SIGNAL FILTERING METHOD, A FREQUENCY SYNTHESISER AND THE CORRESPONDING COMPUTER PROGRAMS
Document Type and Number:
WIPO Patent Application WO/2003/063350
Kind Code:
A2
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 $g(S) that appears in the singular value decomposition (SVD) of the Hankel matrix of the original digital signal.

Inventors:
BOURDILLON ALAIN (FR)
Application Number:
PCT/FR2003/000180
Publication Date:
July 31, 2003
Filing Date:
January 20, 2003
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
UNIV RENNES (FR)
BOURDILLON ALAIN (FR)
International Classes:
H03H17/02; (IPC1-7): H03H17/02
Other References:
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
Attorney, Agent or Firm:
Vidon, Patrice (2 allée Antoine Becquere, PB 90333 RENNES CEDEX, FR)
Download PDF:
Claims:
REVENDICATIONS
1. Procédé de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons si, 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 E apparaissant dans la décomposition en valeurs singulières (SVD) de la matrice de Hankel du signal numérique d'origine.
2. Procédé selon la revendication 1, caractérisé en ce que la matrice Z est une matrice n x p s'écrivant : où les éléments cyi 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 2 consiste à annuler toutes les valeurs de a ; sauf la plus grande t717 correspondant à la composante sinusoïdale dominante du signal numérique d'origine.
3. Procédé selon la revendication 2, caractérisé en ce que la simplification de la matrice E consiste en outre à poser o ; = 1.
4. Procédé de filtrage d'un signal numérique d'origine, représenté par une séquence d'échantillons si, 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 les étapes suivantes : obtention d'un vecteur v, dont les composantes vk, k variant de 1 à N/2, sont les N/2 valeurs de la fonction d'autocorrélation translatée de la séquence d'échantillons s ; du signal numérique d'origine ; calcul de scalaires ul et u2 tels que : 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 = ul vk k = 1,2, 3... N/2 * sfiltrék+N, 2 = U2 Vk k = 1, 2, 3... N/2 5.
5. Procédé selon la revendication 4, caractérisé en ce que l'étape d'obtention du vecteur v consiste à calculer les composantesvk, k variant de 1 à N/2, selon l'équation suivante : où si* est le complexe conjugué de 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'autocorrélation translatée de la séquence d'échantillons s ; du signal numérique d'origine.
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.
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.
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 à 8.
10. Programme d'ordinateur, caractérisé en ce que ledit programme comprend des séquences d'instructions adaptées à la mise en oeuvre d'un procédé selon l'une quelconque des revendications 1 à 8 lorsque ledit programme est exécuté sur un ordinateur.
11. 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 à 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 X apparaissant dans la décomposition en valeurs singulières (SVD) de la matrice de Hankel du signal numérique d'origine.
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 à 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 d'obtention d'un vecteur v, dont les composantesvk, k variant de 1 à N/2, sont les N/2 valeurs de la fonction d'autocorrélation translatée de la séquence d'échantillons si du signal numérique d'origine ; des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul de scalaires ul et U2 tels que : des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul d'une séquence d'échantillons sfiltréi, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = u1 vk k = 1, 2,3... N/2 i sfiltrék+NX2 = u2 vk k = 1,2, 3... N/2.
Description:
Procédé de filtrage d'un signal numérique, synthétiseur de fréquence et programme d'ordinateur correspondants.

Le domaine de l'invention est celui du filtrage de signaux numériques.

Le procédé de filtrage selon l'invention a de nombreuses applications. Il peut notamment, mais non exclusivement, être mis en oeuvre 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.

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.

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.

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.

Il est connu que, lors de la synthèse numérique directe (SND), des signaux (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é.

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.

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.

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.

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.

L'invention a notamment pour objectif de pallier ces différents inconvénients de l'état de la technique.

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 oeuvre 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 oeuvre en temps réel.

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à.

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 si, 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 X apparaissant dans la décomposition en valeurs singulières (SVD) de la matrice de Hankel du signal numérique d'origine.

On notera qu'il n'était pas évident d'utiliser la décomposition SVD 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 oeuvre 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.

Comme expliqué en détails par la suite, la matrice # obtenue après simplification, 7"modifiée9 permet d'obtenir une matrice de Hankel filtrée, Hfiltré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.

De façon avantageuse, la matrice E est une matrice n x p s'écrivant : où les éléments 6i 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 cyi sauf la plus grande 6l, correspondant à la composante sinusoïdale dominante du signal numérique d'origine.

Ainsi, la matrice # obtenue après simplification, Modifiée, est très simple avec un seul élément non nul (6l).

Avantageusement, la simplification de la matrice # consiste en outre à poser 6l = 1.

Il s'agit ici d'une simple question de normalisation.

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 composantesvk, 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 ul et u2 tels que :

N/2<BR> <BR> <BR> u1 = #vksk k=l <BR> <BR> <BR> <BR> <BR> <BR> N/2<BR> <BR> <BR> u2 = #vksk+N/2<BR> <BR> <BR> t=t calcul d'une séquence d'échantillons sfiltréi, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = ul vk k = 1,2, 3... N/2 sfiltrék+N/2 = U2 vk 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 ul 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 E apparaissant dans la décomposition en valeurs singulières (SVD) 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=1 (au lieu de k=0 dans le cas classique).

De façon avantageuse, l'étape d'obtention du vecteur v consiste à calculer les composantesvk, k variant de 1 à N/2, selon l'équation suivante : <BR> <BR> <BR> <BR> <BR> <BR> (N/2) +1<BR> <BR> <BR> # sisi+k-1* k= 1, 2, 3 ... N/2<BR> <BR> <BR> i--l où si* est le complexe conjugué de si.

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.

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 si du signal numérique d'origine.

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.

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.

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.

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.

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.

L'invention concerne également un comprenant des moyens permettant la mise en oeuvre du procédé précité.

L'invention concerne aussi un programme d'ordinateur, comprenant des séquences d'instructions adaptées à la mise en oeuvre d'un procédé tel que précité lorsque ledit programme est exécuté sur un ordinateur.

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 si, 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 (SVD) de la matrice de Hankel du signal numérique d'origine.

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 à 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 d'obtention d'un vecteur v, dont les composantesvk, 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 ; des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul de scalaires ul et U2 tels que : <BR> <BR> <BR> <BR> <BR> <BR> N12<BR> <BR> * Ul = EVkSk<BR> <BR> <BR> k=l<BR> <BR> <BR> <BR> <BR> <BR> <BR> N/2<BR> <BR> <BR> * U2 = EVkSk+N12 k=l des moyens de programmation lisibles par ordinateur pour effectuer une étape de calcul d'une séquence d'échantillons sfiltréi, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = ul vk k = 1,2, 3... N/2

* sfiltrék+N, 2 = u2 vk k = 1,2, 3... N/2 (produit programme d'ordinateur).

D'autres caractéristiques et avantages 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 oeuvre 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.

L'invention concerne donc un procédé de filtrage d'un signal numérique d'origine.

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 1 et Q quadrature), représenté par une séquence d'échantillons si, i variant de 1 à N, où N est le nombre d'échantillons à traiter.

Cette étape (1) de synthèse consiste par exemple en la mise en oeuvre 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.

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 si du signal numérique d'origine ; - une étape (22) de calcul de scalaires ul et U2 tels que : une étape (23) de calcul d'une séquence d'échantillons sfiltréi, i variant de 1 à N, représentant le signal numérique filtré, selon les équations suivantes : * sfiltrék = ul vk k = 1,2, 3... N/2 (c) * sfiltrék+N, 2 = u2 vk k = 1, 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éi 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.

L'étape (21) d'obtention du vecteur v peut être effectuée de deux façons différentes,.

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 composantesvk, k variant de 1 à N/2, selon l'équation suivante : où si* est le complexe conjugué de si.

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.

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 oeuvre d'une synthèse de fréquence numérique directe (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 si 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 [j2xF (k-1)] 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 oeuvre d'un mode de réalisation particulier du procédé de filtrage selon l'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) +1 à 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 ul est calculé par l'association d'un premier multiplicateur 4 et d'un accumulateur 5. Plus précisément, à l'instant i, la valeur vi est présentée en entrée du premier multiplicateur 4 et elle est multipliée par si. L'opération est effectuée pour i variant de 1 à N/2. Pour i=N/2, l'accumulateur 5 contient la valeur ul (équation (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 ul 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).

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.

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équence F=11, 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.

On présente ci-après le cheminement intellectuel de l'inventeur pour aboutir aux équations précitées.

On suppose que le signal comprend N valeurs s= {SI 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) +1=p+1, formée de la façon suivante : Cette écriture met en évidence le fait que l'on retrouve la séquence initiale en prenant la lè'ligne de H, suivie de la dernière ligne.

La décomposition SVD (décomposition en valeurs singulières) de cette matrice de Hankel du signal s'écrit : H = VZVH où U et V sont des matrices n x n et p x p respectivement, formées de vecteurs singuliers, VH indique la transposée hermitienne de V et X est une matrice n x p composée des valeurs singulières classées dans l'ordre décroissant :

Les valeurs 6 ; correspondent aux puissances des composantes présentes dans le signal. Les valeurs les plus faibles correspondent au bruit.

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 : Hfiltrée = U#modifiéeVH 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.

Dans le cadre de la présente invention, on simplifie la matrice X en annulant toutes les valeurs de cs ; sauf la plus grande On correspondant à la composante sinusoïdale dominante du signal numérique d'origine, et on pose #1 = 1.

Dans ces conditions la matrice zmodifiée devient simple avec un seul élément non nul égal à 1, les calculs se simplifient et on obtient :

Pour retrouver le signal filtré, il suffit de calculer la première et la dernière ligne de Hfil"e. On constate sur la matrice précédente que seules les deux composantes Un et Uni de la matrice U doivent être connues et que seule la première ligne v11*, v21*,...vpI* de la matrice VH doit être connue.

Les composantes vll, V21, ... vpl peuvent être calculées à l'aide du produit matriciel suivant : v = HHH ( :, 1) où HH est la transposée hermitienne de H et H ( :, 1) représente la première colonne de H.

Cette équation correspond à l'équation (e) précitée, utilisée lors de l'étape (21) d'obtention du vecteur v.

Pour des raisons de vitesse de calcul, il a fallu trouver une astuce pour calculer Un et un1 rapidement, sans avoir à calculer la matrice U entière. Après étude, l'inventeur a trouvé que u11 et un1 pouvaient être obtenus par : Ainsi, ull et unl correspondent respectivement aux scalaires ul et u. 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 Hfi, tré pour obtenir le signal filtré par l'équation : Cette équation correspond aux équations (c) et (d) utilisées lors de l'étape référencée 23 sur la figure 1.