Brevet FR2918236A1 — publié le 20090102

Procédé et dispositif de génération numérique d'une fréquence L'invention concerne un procédé et un dispositif de génération numérique d'un signal numérique d'une fréquence donnée. Pour générer numériquement une fréquence, une solution consiste à générer les valeurs discrètes d'une ou plusieurs fonctions trigonométriques, par exemple de cosinus et de sinus, correspondant à la fréquence à générer, ces valeurs discrètes correspondant à des points situés sur les courbes des fonctions trigonométriques utilisées. Parmi les diverses méthodes existantes de génération numérique de fréquence, il en existe une, qualifiée de "récursive" ou "d'itérative", qui est basée sur des calculs de sinus et cosinus d'angles consécutifs. Cette méthode repose sur l'identité trigonométrique suivante : eivx = ei(kv:+vo) = .e'= eiv: (1) où - ço représente une phase initiale, généralement telle que q'0 = 0 , - SOS représente un pas de phase constant, défini par la relation çs = 2rc • f~ / fs où ff, fs correspondent respectivement à la fréquence à générer et à une fréquence d'échantillonnage du signal numérique généré. -k représente un indice d'incrémentation de phase pour le calcul de sinus et de cosinus d'angles, ou phases, consécutifs, tel que k =1, 2,... . Posons xk = cos CQk et yk = sin çok . Il résulte de l'identité (1) que : -xk = xk • cos ço, û yk . sin ços (2) ù yk = yk • cos ço, + xk_L • Sin q's (3) Ainsi, la phase initiale ço et le pas de phase SOS étant connus, les valeurs de sinus et de cosinus des phases çk suivantes pour k=1, 2, 3, 4, ... se déduisent de manière récursive, à partir des valeurs de cosinus et de sinus de la phase initiale ço,. Autrement dit, on peut calculer les valeurs des couples (xk, yk) de manière récursive, à partir du couple initial (xo, yo). A titre d'exemple illustratif, nous allons décrire le calcul des sinus et cosinus pour k=1, k=2 et k=3, avec une phase initiale q'0 = 0 et un pas de phase SOS =1 . Pour les besoins des calculs, on calcule et on mémorise le cosinus et le sinus de l'angle SOS =1 : cos (1 ) = 0,999848 et sin (1 ) = 0, 017452 . Initialement, pour k=0, on a cos çoo =1 et sin çoo = 0 . Ensuite, pour k=1, on calcule cos q0i et sin q0i à partir de cos çoo et sin ço, à l'aide des équations (2) et (3) xi = xo • cos (1 ) ù yo • sin (1 ) =1 . cos (1 ) ù 0 • sin (1 ) = 0, 999848 yi = yo • cos (1 ) + xo • sin (1 ) = 0 • cos (1 ) + 1. sin (1 ) = 0, 017452 Ensuite, pour k=2, on calcule cos qO2 et sin qO2 à partir de cos q0i et sin q0i à l'aide des équations (2) et (3) x2=xi•cos(1 ) ùy•sin(1 ) = (0,999848) • (0,999848) ù (0, 017452 • (0, 017452 = 0,999391 y2 = yi • cos (1 ) + xi • sin (1 ) = (0, 017452 • (0,999848) + (0,999848) • (0, 017452 = 0, 034899 Ensuite, pour k=3, on calcule cos q3 et sin q'3 à partir de cos qO2 et sin qO2 à l'aide des équations (2) et (3) x3 =x2 •cos(1 )-y2 . sin (1 ) 0,999391) . (0,999848) ù (0, 034899 . (0, 017452 = 0,998629 y3 =y2.cos(1 ) +x2•sin(1 ) = (0, 034899) . (0, 999848 + (0,999391) . (0, 017452) = 0, 052336 La méthode permet ainsi de calculer de manière récursive les sinus et les cosinus d'angles consécutifs. Les calculs trigonométriques utilisant des fonctions trigonométriques standards sont consommateurs en temps de calcul. Avec la méthode récursive de calcul trigonométrique d'angles consécutifs qui vient d'être décrite, on calcule les résultats des sinus et cosinus d'angles consécutifs sans faire appel à des fonctions trigonométriques. En effet, les calculs utilisent les résultats des sinus et cosinus du pas de phase SOS et nécessitent seulement de réaliser des opérations de multiplications et d'additions. Cette méthode présente ainsi l'avantage de pouvoir être mise en oeuvre avec des moyens matériels et/ou logiciels simples et d'offrir une vitesse de calcul constante, indépendamment de la précision requise pour la fréquence générée. Son utilisation est donc particulièrement intéressante. Cependant, une telle méthode de calcul trigonométrique d'angles consécutifs présente un inconvénient majeur : elle est numériquement instable. Cet inconvénient est lié au fait qu'elle est récursive, c'est-à-dire qu'elle calcule les valeurs (xk,yk) à partir du résultat (xk_i, yk L précédemment calculé, et que les moyens de calcul numériques imposent une précision finie pour les calculs. En particulier, les calculs des valeurs (xk, yk sont réalisés à partir de valeurs arrondies avec la précision finie utilisée des valeurs ()c.k_i, yk_i) et des cosinus et de sinus du pas de phase SOS . En outre, le résultat fourni par les moyens de calculs pour le couple de valeurs (xk, yk) est lui-même une valeur arrondie, une approximation du résultat réel des calculs. De telles approximations produisent, à chaque incrément de phase k, une erreur dans les calculs. Cette erreur alimente les calculs suivants, correspondant à l'incrément de phase (k+1), lesquels l'amplifient encore. En fonction des valeurs initiales des couples (x0, y0) et (xs, ys), le couple de valeurs calculées (xk, yk) peut soit dégénérer vers zéro, soit augmenter vers l'infini. Il s'agit là d'un cercle vicieux évolutif produisant un "effet boule de neige" qui dégrade considérablement et rapidement la précision des calculs. C'est la raison pour laquelle cette méthode de génération numérique de fréquence d'angles consécutifs est inutilisable en pratique. La présente invention propose un procédé de génération numérique d'une fréquence donnée, dans lequel on réitère une étape de calcul d'au moins une fonction trigonométrique pour des phases consécutives séparées par un pas de phase SOS qui est fonction de la fréquence à générer, et - lors de l'étape de calcul de ladite fonction trigonométrique pour une phase d'indice k, k représentant un indice d'incrémentation de phase suivant le pas de phase çps, on calcule un résultat de la fonction trigonométrique pour la phase d'indice k à partir de résultats arrondis de la fonction trigonométrique pour la phase précédente d'indice k-1 et pour ledit pas de phase respectivement qui permette de résoudre le problème d'instabilité numérique explicité dans le paragraphe qui précède. A cet effet, un nombre N de résultats arrondis de la fonction trigonométrique pour ledit pas de phase çps et des probabilités respectives pi de sélection desdits N résultats arrondis étant fournis, l'invention réside dans le fait de sélectionner l'un des N résultats arrondis pour le pas de phase çps, et de calculer le résultat de la fonction trigonométrique pour la phase d'indice k en tenant compte des probabilités de sélection déterminées pi . L'invention consiste donc à sélectionner chacun des N résultats arrondis de la fonction trigonométrique pour le pas de phase avec une probabilité de sélection prédéfinie. Les probabilités de tirage, ou de sélection, des différents résultats arrondis peuvent ainsi être choisies de manière à assurer une stabilité numérique du procédé de calcul itératif. Au lieu de s'accumuler et donc de s'amplifier, les erreurs d'arrondi successifs se compensent et s'annulent mutuellement. Dans un mode de réalisation particulier, pour sélectionner l'un des N résultats arrondis pour le pas de phase çps en tenant compte des probabilités de sélection déterminées pi, - on génère un nombre aléatoire (1) uniformément distribuée sur un intervalle de référence; - l'intervalle de référence étant divisé en N intervalles In disjoints de longueurs respectives proportionnelles aux probabilités pi avec 1≤ i N , on détermine à quel intervalle Ij, parmi lesdits N intervalles In , appartient le nombre aléatoire généré (1); - et on sélectionne, parmi les N résultats arrondis de la fonction trigonométrique pour le pas de phase çps, celui ayant la probabilité de sélection p1 correspondant à la longueur de l'intervalle déterminé Ij. Grâce à cela, on tient compte de façon simple et efficace des probabilités respectives de sélection des différents résultats arrondis pour sélectionner ces résultats arrondis lors du processus itératif de calcul. Avantageusement, les résultats arrondis étant calculés avec une précision finie de w de bits sur la partie fractionnelle, étant supposé que les résultats sont représentés en virgule fixe avec w bits après la virgule, on arrondit le résultat de la fonction trigonométrique pour la phase d'indice k, obtenu par multiplication des résultats arrondis de la fonction trigonométrique pour la phase précédente d'indice k-1 et pour le pas de phase respectivement, en tronquant la partie fractionnelle dudit résultat pour la phase d'indice k d'une portion de w bits et on détermine la valeur représentée par la portion des w bits tronqués dans l'intervalle de référence afin de générer le nombre aléatoire. L'invention concerne aussi un dispositif de génération numérique d'une fréquence donnée comportant des moyens de calcul itératif agencés pour réitérer le calcul d'au moins une fonction trigonométrique pour des phases consécutives séparées par un pas de phase çps qui est fonction de la fréquence à générer, le calcul de ladite fonction trigonométrique pour une phase d'indice k, k représentant un indice d'incrémentation de phase suivant le pas de phase çps, étant réalisé à partir d'un résultat arrondi de la fonction trigonométrique pour la phase précédente d'indice k-1 et d'un résultat arrondi de la fonction trigonométrique pour ledit pas de phase respectivement, caractérisé par le fait qu'il comprend - des moyens de stockage d'un nombre N de résultats arrondis de la fonction trigonométrique pour ledit pas de phase ços - des moyens de stockage de probabilités respectives pi de sélection desdits N résultats arrondis - des moyens pour sélectionner l'un des N résultats arrondis pour le pas de phase çps, en tenant compte des probabilités de sélection déterminées pi, pour calculer le résultat de la fonction trigonométrique pour la phase d'indice k. L'invention sera mieux comprise à l'aide de la description suivante du procédé et du dispositif de génération numérique d'une fréquence donnée selon l'invention, en référence aux dessins annexés sur lesquels : - la figure 1 représente un schéma bloc fonctionnel d'une forme particulière de réalisation du dispositif de l'invention ; la figure 2 représente un organigramme d'un mode de réalisation particulier du procédé selon l'invention, correspondant au fonctionnement du dispositif de la figure 1 ; - les figures 3A et 3B représentent, sur un cercle trigonométrique, un pas de phase çps utilisé dans le procédé de la figure 2. Le procédé de l'invention permet de générer un signal numérique à une fréquence numérique donnée, notée f~ , par le calcul d'au moins une fonction trigonométrique pour des angles consécutifs. Dans l'exemple particulier de la description, la fonction trigonométrique utilisée est la fonction exponentielle complexe définie de la façon suivante : eiz =cos(z)+ jsin(z) Rappelons au préalable l'identité trigonométrique suivante : eivx = ei(kg+vo) = ei[(kùDv:+R] eivx-i (1) où - q0o représente une phase initiale, ici q'0 = 0 , - SOS représente un pas de phase ici constant, défini par la relation = 27r f~ / fs , où L , fs correspondent respectivement à la fréquence à générer et à une fréquence d'échantillonnage. - k représente un indice d'incrémentation de phase pour le calcul de sinus et de cosinus d'angles, ou phases, consécutifs. Le signal généré par le générateur de fréquence est un signal numérique, échantillonné à la fréquence d'échantillonnage fs . Afin de respecter le critère de Nyquist- Shannon, les fréquences fs et f~ sont telles que f 1 . Il en résulte que le pas de phase fk 2 est tel que SOS r . La phase initiale ço0 étant nulle, on obtient l'identité trigonométrique suivante : eivk = eivk-~ , eiv: (2) Sur la base de la relation (2), la fonction exponentielle complexe ei~k pour la phase d'indice k se calcule à partir du résultat de la fonction exponentielle complexe ei''k-' pour la phase d'indice k-1 et du résultat de la fonction exponentielle complexe ei''= pour le pas de phase SOS . Posons : xk = cos y)k - yk = sin çok Alors, on peut exprimer la fonction exponentielle complexe de la façon suivante: e wk = x kJ•Yk Par ailleurs, par souci de concision, on pose : xk + J yk = (xk , Yk Il résulte de la relation d'identité mathématique (2) les relations suivantes : k=0 (x0,yo) = (cos gpo,singpo)=cosgpo+ j.sin gpo k=1,... ()c.k,yk) = cosçpk+J•sinçpk=()c.k,yk_1)•(cos çp,+j.smçp,) (3) +J•yk 1)•(cos ç +J•sinç ) • cos çp, ù Yk • sin ço,) + J (Yk-1 • cos qp, + xk_i • Sin ço, ) En pratique, les calculs sont réalisés en précision finie. Dans l'exemple particulier décrit ici non limitatif, il s'agit d'une précision de w bits sur la partie fractionnelle (c'est-à-dire sur la partie du nombre situé après la virgule). Ainsi, le résultat du calcul de la fonction exponentielle complexe e'''' pour la phase d'indice k est obtenu à partir des résultats approchés de la fonction exponentielle complexe respectivement pour la phase d'indice k-1, e'~k ,et pour le pas de phase q , e''s , et subit lui-même un arrondissement de sa partie fractionnelle sur w bits. Soit Q,,[0], un opérateur d'arrondi en w bits sur la partie fractionnelle. Cet opérateur d'arrondi, représenté par la notation Q,,[.] , a pour fonction de faire un arrondissement d'un nombre, ayant une partie entière et une partie fractionnelle codée sur un certain nombre bits, en tronquant la partie fractionnelle des bits de poids les plus faibles afin de ne conserver que les w bits de la partie fractionnelle de poids les plus forts. Le résultat obtenu est un résultat approché, que l'on appellera aussi par la suite "résultat arrondi" ou "approximation", du nombre considéré, avec une précision finie de w bits sur la partie fractionnelle. Le résultat du calcul de la fonction exponentielle complexe, en précision finie de w bits sur la partie fractionnelle, pour la phase d'indice k est donc : Qw[(xk'y,)]-Qw~Qw[(xk1'yk Qw[(cosçp,,,sinçpy,). (4) Un mode particulier de réalisation du procédé de l'invention va maintenant être décrit en référence à la figure 2. Le procédé comprend une phase préliminaire (D comportant ^ une étape (Di de détermination d'un nombre donné N de résultats arrondis possibles, avec la précision de w bits sur la partie fractionnelle, de e'ç's (c'est-à-dire de la fonction exponentielle complexe pour ledit pas de phase q ); ^ une étape (Dz de détermination de probabilités respectives pi de sélection des N résultats arrondis possibles, avec 1 N , déterminés à l'étape (Di . Sur la figure 3A, on a représenté le cercle trigonométrique C dans un plan complexe associé à un repère orthonormé direct (O,u,w), où (o,u) et (o,w) représentent respectivement l'axe des réels, en abscisses, et l'axe des imaginaires, en ordonnées. Le cercle trigonométrique C est centré sur l'origine O du plan complexe et son rayon est égal à 1. Dans le plan complexe de la figure 3A, on a également représenté un vecteur r, que l'on appellera par la suite "vecteur rotation de phase", défini par la relation : = OP, où O représente l'origine du plan complexe et P représente le point du plan complexe défini l'expression exponentielle e'''s et apparaissant sur la figure 3B; il est situé sur le cercle trigonométrique C et correspond à l'angle SOS sur le cercle C (ç = angle entre l'axe (o,u) et r = OP ), En définitive, le vecteur rotation de phase modélise la fonction exponentielle complexe pour le pas de phase q' , c'est-à-dire e'''s . Dans l'exemple particulier décrit ici, les résultats arrondis de la fonction exponentielle complexe pour le pas de phase e'''s , autrement dit du vecteur rotation de phase , déterminés à l'étape (Di , sont au nombre de N = 4. Ils sont modélisés sur la figure 3A par quatre vecteurs avec i=1,2,3,4 tels que r = âP ' , P. ' représentant le point du plan complexe défini par l'expression exponentielle r e''' et apparaissant sur la figure 3B. Les quatre points Pi ', P2 ', P3 ', P, ' correspondent aux quatre approximations du point P et forment un carré, ayant deux côtés parallèles à l'axe (0,u) et les deux autres à l'axe (0,w) , à l'intérieur duquel est situé le point P. Sur la figure 3B, on a représenté de façon plus détaillée le carré formé par les quatre points P ', Pz ', P3 ', P4 ' , le point P situé à l'intérieur, ainsi que quatre vecteurs représentant les erreurs d'approximation correspondantes. Ces vecteurs d'erreur d'approximation ou d'arrondi, notés ev , ev , ev , ev , sont définis par le point P, constituant 1 2 3 4 l'origine de chacun d'eux, et par les quatre points d'approximation P I P2 P3 P4 ' respectivement, de la façon suivante : e,, = pour 1 L'équation (a) traduit la condition selon laquelle la somme des probabilités de sélection p1, pz, p3, p4 doit être égale à 1. Les équations (b) et (c) traduisent la condition selon laquelle, en moyenne, l'erreur d'approximation doit être nulle. L'équation (d) traduit la condition selon laquelle la variance de l'erreur, qui 25 correspond à l'énergie de l'erreur, doit être minimale. Pour résoudre ce système d'équations, on procède de la façon suivante : on pose p4 = x ; on résout les équations (a), (b) et (c) de manière à exprimer les probabilités pi, p,, ps en fonction de x ; on substitue les probabilités p1, pz, p3, p4 par leurs expressions respectives en ,2 fonction de x dans l'expression pi • ev de l'équation (d) afin de i=1 4 ,2 déterminer f (x) = E pi • eä ; i=1 4 2 f (x) ev soit i=1et on résout l'équation on calcule la dérivée première par rapport à x de la fonction 4 d j jpi • ev, i=1 / 4 ' = 0 pour minimiser l'expression pi • ev i=1 Enfin, s'agissant de probabilités, on vérifie que pi 0 pour i =1,2,3,4. Si c'est n'est pas le cas, on assigne la valeur 0 à chaque probabilité pi qui est négative et on résout les équations (a), (b) et (c) pour calculer les probabilités inconnues restantes. La résolution de ce système d'équations permet ainsi d'obtenir les valeurs respectives des probabilités de sélection p1, p2, p3, p4 des vecteurs r v, i =1,2,3,4 d'approximation du vecteur de rotation de phase r . Suite à cette phase initiale D de calcul des probabilités respectives de sélection des quatre approximations du résultat de la fonction e'''s , le procédé comprend l'exécution d'une boucle de calcul, alimentée par les quatre résultats arrondis de la fonction exponentielle complexe pour le pas de phase et par leurs probabilités respectives de sélection. Cette boucle est exécutée tant que la fréquence f doit être générée. Cette boucle comprend la réitération d'une étape de calcul de la fonction exponentielle complexe pour des phases consécutives qpk, pour k = 0,1,2, Deux phases consécutives sont séparées l'une de l'autre par le pas de phase ço,, autrement dit on a la relation : çok = çok-1 +SOS La boucle comprend une première étape (3o, dite étape d'initialisation, pour l'indice k = O. Lors de cette étape 13o, on mémorise la valeur de Qw [e'ç' , autrement dit l'arrondi de e''' avec une précision de w bits sur la partie fractionnelle, dans la mémoire de stockage 1, le cas échéant à la place du contenu précédent de la mémoire 1. L'étape 13o est suivie d'une étape 131 correspondant à l'indice d'incrémentation k=1 de calcul de la fonction exponentielle complexe pour la phase q' = ç0 +çps . Lors de cette étape 131, on réalise les sous-étapes suivantes afin de calculer un arrondi de e'ç' avec une précision de w bits sur la partie fractionnelle, noté Q,, [e'''' 1: (31,1 ) On sélectionne l'un des résultats arrondis de e'''= , noté Q ,, [e'''= ] , parmi les quatre résultats arrondis déterminés lors de la phase initiale (D . Autrement dit, en modélisation vectorielle, on sélectionne l'un des quatre vecteurs d'approximation avec i =1,2,3,4 comme approximation du vecteur rotation de phase r . Pour la première sélection (c'est-à-dire pour k=l), on sélectionne le vecteur d'approximation 1-,, le plus probable, c'est-à-dire celui ayant la probabilité p, de sélection la plus forte. En l'espèce, il s'agit der = r3e'9s' 3 (31,2) On multiplie le résultat arrondi de la fonction exponentielle complexe pour la phase précédente ço,, soit , et le résultat arrondi sélectionné de la fonction exponentielle complexe pour le pas de phase ço,, soit Qw [e'q = r3e''s3 . Autrement dit, on réalise l'opération de multiplication suivante : QW Le-4'1 Ceiq On notera que, la multiplication de deux arrondis ayant chacun une précision de w bits sur leur partie fractionnelle fournit un résultat ayant une précision de 2w bits sur sa partie fractionnelle. 25 131,3 ) On calcule ensuite l'arrondi, à l'aide de l'opérateur Q,,[.] , du résultat obtenu à la sous-étape précédente 131,2). On réalise ainsi l'opération suivante : 15 20 20 25 Q ~Q Le'wo~.Q [e'w:=Q [e' ~ L'opérateur d'arrondi tronque la partie fractionnelle du résultat obtenu à la sous-étape [31,2) d'une portion de w bits. On obtient ainsi un résultat arrondi de e'''' , noté Q,v [e''''], avec une précision de w bits sur la partie fractionnelle. [31,4) On mémorise le résultat arrondi de la fonction exponentielle obtenu pour la phase rp~, noté Qqe''''], dans le registre de stockage 1 destiné à alimenter l'étape de calcul pour la phase ço2 suivante. L'étape (31 est suivie d'une succession d'étapes [3k pour k = 2, 3, .... Une étape de calcul [3k pour k = 2, 3, ..., calcule un arrondi, ou résultat approché, avec une précision de w bits sur la partie fractionnelle de la fonction exponentielle complexe pour la phase çok . Ce résultat approché est noté Q,, [e'''k . L'étape [3k comprend les sous-étapes suivantes : (3x,1 ) Lors d'une première sous-étape (3k,1, on détermine la valeur d'un indice de sélection, parmi un ensemble de N indices, à savoir l'ensemble {1,2,3,4}, étant rappelé que N=4. Pour déterminer cet indice de sélection, on génère un nombre aléatoire k uniformément distribuée sur un intervalle de référence Iref, ici Iref=[0,1]. Le fait que le nombre aléatoire k est uniformément distribué sur l'intervalle [0,1] signifie qu'elle est susceptible de prendre avec la même probabilité des valeurs numériques dans des sous-intervalles de l'intervalle [0,1] de mêmes longueurs respectives . Sur la figure 4, on a représenté l'intervalle de référence Iref=[0,1]. Cet intervalle Iref est divisé en N sous-intervalles In, avec 1 n 4 , étant rappelé que N=4. Les différents intervalles In sont disjoints et de longueurs respectives ici égales aux probabilités de sélection pn avec 1 n≤ 4 déterminées lors de la phase préliminaire D . On définit les sous-intervalles In de la façon suivante : I~ =[0,Pi[ 12 =[P1,P1+P2[ 13 =[Pi+P2,P1+P2+P3[ 14 =[P1+P2+P3,P1+P2+P3+P4 On détermine à quel sous-intervalle In appartient le nombre aléatoire .ek généré. On suppose que le nombre k appartient au sous-intervalle Ij de longueur pi . On attribue alors à l'indice de sélection à déterminer l'indice j de la probabilité de sélection p1 correspondant à la longueur de l'intervalle déterminé Ij. Par conséquent, l'indice de sélection j est tel que : si ek E h, alors j=1 si ek E 12, alors j=2 si ek E 13 , alors j=3 - si ek E 14, alors j=4 (3K,2) A l'aide de l'indice de sélection j déterminé à l'étape (3k,i, on sélectionne, parmi les quatre résultats arrondis de la fonction exponentielle complexe pour le pas de phase déterminés lors de la phase initiale (D , celui ayant la probabilité de sélection d'indice j, soit p1. Ainsi, on choisit que Q,, [ei's _ r1e'~s' . Autrement dit, en modélisation vectorielle, on sélectionne le vecteur d'approximation r; comme approximation du vecteur r . (3K,3) On multiplie le résultat arrondi de la fonction exponentielle complexe pour la phase précédente çok, soit Q,,, , et le résultat arrondi de la fonction exponentielle complexe pour le pas de phase Çps , Qqe''s , sélectionné à l'étape 13k,2. Autrement dit, on calcule l'expression Q,,, Q,,, Leiv: avec Qw [eiv: = r Le calcul consistant à multiplier deux arrondis ayant chacun une précision de w bits sur leur partie fractionnelle, le résultat obtenu a une partie fractionnelle codées sur 2w bits. 13 (3K,4) On calcule ensuite l'arrondi de Qw Le/9û Qw [e'q à l'aide de l'opérateur d'arrondi Qw [•] , c'est-à-dire l'arrondi avec une précision de w bits sur la partie fractionnelle du résultat de la sous-étape e2). A cet effet, on tronque la partie fractionnelle du résultat obtenu à la sous-étape (3k,3 des w bits de poids les plus faibles. On obtient ainsi un résultat arrondi de e'''' avec une précision de w bits sur sa partie fractionnelle (correspondant aux w bits restants, de poids les plus forts), noté Qw Le/9' . (3K,5) On mémorise le résultat arrondi ainsi obtenu, Q,, [e'''k , dans la mémoire de stockage 1 afin d'alimenter l'étape de calcul pour la phase çok+i suivante. Lors de la sous-étape 13k,1, le nombre aléatoire k peut être généré par un générateur de nombres pseudo-aléatoires, connu de l'homme du métier. Pour générer ce nombre aléatoire k, on peut également utiliser un lot de w bits tronqués par l'opérateur d'arrondi Q,,[.] à l'étape de calcul précédente J3k-1, et plus précisément à la sous-étape [3k- 15 1,4 . En fait, à l'étape de calcul précédente (3k-1, l'opérateur d'arrondi a calculé deux résultats arrondis: l'un sur la partie réelle et l'autre sur la partie imaginaire. L'opérateur d'arrondi produit donc deux lots de w bits tronqués. Pour générer le nombre aléatoire k, on peut utiliser l'un de ces deux lots ou bien un concaténation de w/2 bits de l'un des lots et de w/2 bits de l'autre lot. On détermine la valeur représentée par le lot de w bits tronqués 20 dans l'intervalle de référence Iref, ici Iref=[0,1]. Par exemple, si on prend w=4 et 4 bits tronqués valant 1 0 1 1, la valeur représentée par ces bits dans l'intervalle [0,1] est 2ù1 + 2-3 + 2' = 0,6875 . Autrement dit, on traduit les w bits tronqués en une valeur comprise dans l'intervalle de référence Iref. Cette valeur constitue le nombre aléatoire k d'indice k. L'étape de calcul (3k est ainsi réitérée pour des phases consécutives çOk séparées 25 deux à deux par un pas de phase ços tant qu'un signal numérique de fréquence f~ doit être généré. Une étape de test rk pour vérifier si la fréquence f~ doit être encore générée est donc réalisée à la fin de chaque étape (3k. S'il convient de continuer la génération de fréquence f , l'étape (3k+1 est exécutée. Sinon, le procédé est interrompu. 10 On va maintenant décrire, en référence à la figure 1, une forme particulière de réalisation du dispositif de génération d'une fréquence numérique, apte à mettre en oeuvre le procédé qui vient d'être décrit. Le dispositif représenté sur la figure 1 comprend une mémoire de stockage 1, un module de sélection 2, un multiplicateur 3 et un opérateur d'arrondi 4. La mémoire de stockage 1 est ici un registre à décalage destiné à recevoir et à stocker provisoirementle résultat de chaque étape de calcul (3k, autrement dit l'arrondi Q,,, , obtenu à l'issue de l'étape de calcul (3k. Le résultat Qw ~e'~k d'une étape de calcul (3k est stocké dans la mémoire 1 à la place du résultat Q ,, [e'~k de l'étape de calcul précédente (3k_1. A l'initialisation, c'est-à-dire à l'étape (3o, la mémoire de stockage 1 est réinitialisée afin de stocker l'arrondi de la fonction exponentielle complexe pour la phase initiale ço,, c'est-à-dire Le module de sélection 2 comprend un sous-module 20 de détermination d'un indice de sélection j ; - un sous-module 21 de fourniture d'un résultat approché de la fonction exponentielle complexe pour le pas de phase ço . Le sous-module 20 de détermination d'un indice de sélection j comprend N mémoires 200-203, avec N=4, de stockage des probabilités respectives pi' pz, p3, p4 de sélection des quatre résultats approchés de la fonction exponentielle complexe pour le pas de phase 'ps ; un générateur pseudo-aléatoire 204 destiné à générer le nombre aléatoire .ek de façon uniformément répartie sur l'intervalle de référence Ire= [0,1]; un bloc 205 de détermination d'un indice de sélection j relié aux quatre mémoires 200 à 203 et à la sortie du générateur pseudo-aléatoire 204. Le sous-module 20 est agencé pour mettre en oeuvre la sous-étape 1k,1. En fonctionnement, à chaque étape de calcul (3k, le générateur 204 génère le nombre aléatoire k uniformément réparti sur l'intervalle de référence [0,1] et la fournit au bloc 205 de détermination d'un indice de sélection j. Le bloc 205 détermine à quel sous-intervalle le nombre .ek appartient parmi les quatre sous-intervalles Iä 12, I3 et I4 de l'intervalle de référence [0,1] qui sont définis par les probabilités pi, pz, p3, p, de la façon suivante : h =[0,pi[;12 =[pi,pi+p2[;13 =[pi+p2,pl+pz+p3[;14 -[pi+pz+p3,pi+pz+p3+p41 Le nombre aléatoire .ek appartenant à l'intervalle Ij , le sous-module 20 attribue la valeur j à l'indice de sélection et fournit celui-ci au sous-module 21. Dans le cas où le nombre aléatoire .ek est généré à partir des w bits tronqués à l'étape de calcul précédente (3k_1, le dispositif comprend une connexion entre une sortie supplémentaire de l'opérateur d'arrondi, destinée à délivrer les w bits tronqués par l'opérateur d'arrondi à chaque étape de calcul (3k, et une entrée supplémentaire du sous- module 20 de détermination de l'indice de sélection j. En outre, le sous-module 20 comprend une mémoire de stockage des w bits tronqués fournis à chaque étape de calcul par l'opérateur d'arrondi 4 et des moyens pour déterminer la valeur représentée par ces w bits tronqués, laquelle correspond au nombre aléatoire utilisé lors de l'étape de calcul suivante pour déterminer l'indice de sélection j. En outre, lors l'étape initiale (3o de la boucle de calcul (c'est-à-dire pour k=0), le module 20 de détermination d'un indice de sélection j est agencé pour attribuer à l'indice de sélection j la valeur de l'indice i de la probabilité p; la plus élevée parmi les quatre probabilités pi, pz, p3, p4 . Le sous-module 21 de fourniture d'un résultat approché de la fonction exponentielle complexe pour le pas de phase e0s comprend quatre mémoires 210-213 de stockage des quatre approximations rie' , rze'Ç's2 , r3e'~S3 , r,e''s de la fonction exponentielle complexe pour le pas de phase q' , modélisées par les quatre vecteurs d'approximation rvi, rvz, rv3, rv, un multiplexeur 214 connecté en entrée, d'une part, aux quatre mémoires 200-203 et, d'autre part, au module 20 de détermination d'un indice de sélection j , et en sortie au multiplicateur 3. Le multiplexeur 214 est agencé pour sélectionner l'une des quatre approximations de la fonction exponentielle complexe pour le pas de phase e0s stockées dans les mémoires 210 à 213, en fonction de la valeur de l'indice de sélection j transmise par le sous-module 20. En fonctionnement, le multiplexeur sélectionne l'approximation r.e''" correspondant à l'indice j reçu. En fonctionnement, à la sous-étape de calcul (3k, le multiplicateur 3 est alimenté en entrée par le résultat approché de la fonction exponentielle complexe pour la phase ~Ok , stocké dans la mémoire 1, et par le résultat approché de la fonction exponentielle complexe pour le pas de phase çps, fourni par le sous- module 21 . Il multiplie les deux résultats approchés (Q,,, ~e'~k • Q,v [e'q avec Qw [e'q = rv~) et fournit le résultat obtenu à l'opérateur d'arrondi 4. Celui-ci détermine l'arrondi du résultat de la multiplication en tronquant les w bits de poids les plus faibles de la partie fractionnelle afin d'obtenir un résultat approché de e' avec une précision de w bits sur sa partie fractionnelle, noté Q ,v [e'''k ] . Ce résultat est fourni en sortie du dispositif et parallèlement enregistré dans la mémoire 1, pour la sous-étape de calcul suivante ,13k+,, à la place de Qw ~e' . Le dispositif de génération numérique de fréquence comprend également un module de configuration 5 et un module de commande 6, en l'espèce un micro- processeur. Le module de configuration 5 est agencé pour mettre en oeuvre les deux étapes ' 1 ' ' 2 de la phase préliminaire D , afin de déterminer, à partir d'un pas de phase Çps fourni, les quatre approximations rie'9s' , rze'~s~ , r3e'~S3 , re'Ç's de la fonction exponentielle complexe pour le pas de phase SOS (modélisées par les quatre vecteurs d'approximation r , rz , r , rq ) et pour calculer les quatre probabilités de sélection correspondantes pi, pz, p3, p4 . Les quatre approximations de la fonction exponentielle complexe pour le pas de phase ços sont stockées dans les mémoires 210 à 213 respectivement et leurs probabilités correspondantes sont stockées dans les mémoires 200 à 203. En outre, le module de configuration 5 est agencé pour réinitialiser la mémoire 1, en y enregistrant le résultat approché de la fonction exponentielle complexe pour la phase initiale q, , stocké en mémoire, au début de chaque nouvelle boucle de calcul. Le dispositif de génération de fréquence pourrait lui même être adapté pour calculer la valeur d'initialisation Q ,le''' ] , par exemple par une mise en oeuvre de la méthode dite "CORDIC" qui permet de calculer des fonctions trigonométriques à la précision désirée. Tous les éléments du dispositif sont connectés au module de commande 6 qui est agencé pour en commander le fonctionnement. Les éléments 204 et 205 du module de sélection, le multiplexeur 214, le multiplicateur 3, l'opérateur d'arrondi 4 et le module de configuration 5 sont, dans l'exemple particulier décrit, des modules logiciels formant un programme d'ordinateur. L'invention concerne donc aussi un programme d'ordinateur pour un dispositif de génération numérique d'une fréquence donnée comprenant des instructions logicielles mettre en oeuvre le procédé précédemment décrit, lorsque ledit programme est exécuté par le dispositif. Le programme peut être stocké dans ou transmis par un support de données. Celui-ci peut être un support matériel de stockage, par exemple un CD-ROM, une disquette magnétique ou un disque dur, ou bien un support transmissible tel qu'un signal électrique, optique ou radio. L'invention concerne aussi un support d'enregistrement lisible par un ordinateur sur lequel est enregistré le programme. En variante, ces modules logiciels pourraient au moins partiellement être remplacés par des moyens matériels. Le dispositif de génération numérique de fréquence précédemment décrit peut être intégré dans un équipement de communication radio. Dans la description qui précède, le nombre N de résultats arrondis de la fonction exponentielle complexe pour le pas de phase est égal à quatre. L'invention ne se limite cependant pas à cet exemple particulier de réalisation. Bien entendu, l'invention pourrait utiliser un nombre N de résultats arrondis inférieur ou supérieur à quatre. L'invention s'applique à toutes les techniques nécessitant la génération numérique d'une fréquence : instruments numériques de musique, synthèse audio, radiocommunication. Dans le domaine de la radiocommunication, l'invention peut être utilisée dans le cadre des opérations suivantes : translation en fréquence (modulation, démodulation), asservissement de la fréquence porteuse en réception, - génération des coefficients de FFT, - filtrage multibande, etc. Dans la description qui précède, on a explicité une nouvelle méthode de génération de nombres aléatoires. Selon cette nouvelle méthode, pour générer une succession de nombres aléatoires, on utilise les w bits tronqués par l'opérateur d'arrondi de la partie fractionnelle des résultats successivement obtenus, pour des phases consécutives çOk (avec k=1, 2, ...) séparées par le pas de phase ços , par la multiplication entre les deux résultats arrondis d'une fonction trigonométrique respectivement pour la phase ço et pour le pas de phase ços . Une telle méthode de génération de nombres aléatoire peut être utilisée dans des applications nécessitant une génération de nombres aléatoires, autres que la génération de fréquence. Elle peut être implémentée dans un générateur pseudo- aléatoire ayant comme paramètres de configuration la phase initiale q' et le pas de phase ços15 REVENDICATIONS 1. Procédé de génération numérique d'une fréquence donnée, dans lequel on réitère une étape de calcul d'au moins une fonction trigonométrique pour des phases consécutives séparées par un pas de phase çps qui est fonction de la fréquence à générer, et lors de l'étape de calcul de ladite fonction trigonométrique pour une phase d'indice k, k représentant un indice d'incrémentation de phase suivant le pas de phase çps, on calcule un résultat de la fonction trigonométrique pour la phase d'indice k à partir de résultats arrondis de la fonction trigonométrique pour la phase précédente d'indice k-1 et pour ledit pas de phase respectivement; caractérisé par le fait que, un nombre N de résultats arrondis de la fonction trigonométrique pour ledit pas de phase çps et des probabilités respectives pi de sélection desdits N résultats arrondis étant fournis, on sélectionne l'un des N résultats arrondis pour le pas de phase çps, en tenant compte des probabilités de sélection déterminées p., pour calculer le résultat de la fonction trigonométrique pour la phase d'indice k. 2. Procédé selon la revendication 1, dans lequel, pour sélectionner l'un des N résultats arrondis pour le pas de phase Çps en tenant compte des probabilités de sélection déterminées pi, - on génère un nombre aléatoire (1) uniformément distribuée sur un intervalle de référence; - l'intervalle de référence étant divisé en N intervalles In disjoints de longueurs respectives proportionnelles aux probabilités pi avec 1 i N , on détermine à quel intervalle Ij, parmi lesdits N intervalles In , appartient le nombre aléatoire généré (1); - et on sélectionne, parmi les N résultats arrondis de la fonction trigonométrique pour le pas de phase qps, celui ayant la probabilité de sélection p1 correspondant à la longueur de l'intervalle déterminé Ij. 25 3. Procédé selon la revendication 2, dans lequel les résultats arrondis étant calculés avec une précision finie de w de bits sur les parties fractionnelles, on arrondit le résultat de la fonction trigonométrique pour la phase d'indice k, obtenu par multiplication des résultats arrondis de la fonction trigonométrique pour la phase précédente d'indice k-1 et pour le pas de phase respectivement, en tronquant la partie fractionnelle dudit résultat pour la phase d'indice k d'une portion de w bits et on détermine la valeur représentée par ladite portion de w bits tronqués dans l'intervalle de référence afin de générer le nombre aléatoire. 4. Procédé selon l'une des revendications 1 à 3, dans lequel il est prévu une phase préliminaire comportant ^ une étape de détermination des N résultats arrondis de la fonction trigonométrique pour ledit pas de phase ''s ; ^ une étape de détermination de probabilités respectives pi de sélection des N valeurs approchées possibles, avec 1 i N . 5. Procédé selon la revendication 4, dans lequel le nombre N de résultats arrondis la fonction trigonométrique pour le pas de phase ços est égal à quatre et les quatre résultats arrondis correspondent aux quatre sommets d'un carré contenant un point du cercle trigonométrique représentant le pas de phase ços 6. Procédé selon l'une des revendications 4 et 5, dans lequel les N probabilités respectives pi avec 1 i N de sélection des N résultats arrondis sont déterminées de manière à ce que la moyenne de l'erreur d'arrondi soit nulle. 7. Procédé selon l'une des revendications 4 à 6, dans lequel les N probabilités respectives pi avec 1 i N de sélection des N résultats arrondis sont déterminées de manière à minimiser la variance de l'erreur. 30 8. Procédé selon l'une des revendications 4 à 6, dans lequel les N probabilités respectives pi avec 1 9. Procédé selon l'une des revendications 4 à 8, dans lequel, pour déterminer les 5 N probabilités respectives pi avec 1 i N de sélection des N résultats arrondis, on résout le système d'équations suivant : 4 - Epi =1 (a) i=1 4 4 E pi . e,,, 0 (b) e 0 i=1 - pi = 4 E pi e i=1 i=1 =0 (c) -min 4 1p i=1.zl ev J} d) 10 où ev représentent des vecteurs d'erreur d'approximation avec ev = dans un repère orthonormé. 10. Dispositif de génération numérique d'une fréquence donnée comportant des moyens de calcul itératif agencés pour réitérer le calcul d'au moins une fonction 15 trigonométrique pour des phases consécutives séparées par un pas de phase cos qui est fonction de la fréquence à générer, le calcul de ladite fonction trigonométrique pour une phase d'indice k, k représentant un indice d'incrémentation de phase suivant le pas de phase cps, étant réalisé à partir d'un résultat arrondi de la fonction trigonométrique pour la phase précédente d'indice k-1 et d'un résultat arrondi de la fonction trigonométrique pour 20 ledit pas de phase respectivement, caractérisé par le fait qu'il comprend - des moyens de stockage d'un nombre N de résultats arrondis de la fonction trigonométrique pour ledit pas de phase ços - des moyens de stockage de probabilités respectives pi de sélection desdits N résultats arrondis 25 -des moyens pour sélectionner l'un des N résultats arrondis pour le pas de phase cps, en tenant compte des probabilités de sélection déterminées pi, pour calculer le résultat de la fonction trigonométrique pour la phase d'indice k. 11. Equipement de communication radio intégrant le dispositif de génération numérique de fréquence selon la revendication 10. 12. Programme d'ordinateur pour un dispositif de génération numérique d'une fréquence donnée comprenant des instructions logicielles pour mettre en oeuvre le procédé selon l'une des revendications 1 à 9, lorsque ledit programme est exécuté par le dispositif. 13. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré le programme selon la revendication 12.15