DocDDSGenerator

Un article de WikiHB9TUH.

Sommaire

Générateur de fréquence DDS (Direct Digital Synthesizer)

Généralités

L'objectif de ce petit article et décrire la méthode relativement récente appelée "Direct Digital Synthesizer" (DDS) de génération d'un signal de forme quelconque.

Principe

Cette technique est basée sur l'utilisation d'un composant éléctronique permettant de convertir un nombre binaire en une tension (DAC). Pour pouvoir générer un signal il suffit donc de determiner les valeures désirées à un instant donné et de les fournirent séquentiellement au convertisseur.

Schéma de principe DDS

Figure 1

Ce schéma represente le principe utiliser dans le circuit AD9858 d'Analog Devices qui est assez représentif des possibilités du DDS.

Conversion digital -> analogique et phase -> amplitude

L'on remarque le convertiseur des valeur digitales en signal analogique sur la droite. Celui-ci est precedé d'une table de convertion entre la phase et l'amplitude du signal. Cette table permet de décrire la forme du signal sous la forme d'une table de 215 éléments de 10 bits, en fait cette table est en général une mémoire qui en recevant la fraction phase fournit sous la forme d'un nombre entier compris entre 0 à 215-1 (15 bits) retourne l'amplitude du signal sous la la forme d'un nombre entier compris entre 0 et 210-1. Cette table est préceder par un additioneur permettant de changer l'offset de la phase (PSK, phase shift keying).

La figure suivante ilustre la méthode utilisée afin de determiner la table de convertion de phase en amplitude.

Exemple d'échantillonage de signal

Figure 2

L'accumulateur de phase

L'accumulateur de phase additionne sur 32 bits le nombre provenant de sa gauche avec sa valeur courante et ceci à chaque impulsion d'horloge d'ou le terme d'acumulateur. C'est comme une calculatrice ou l'on aditionnerai tout les n secondes une valeur donnée. Il est à remarquer que cette acumulateur tourne en rond et ne dépasse jamais sa capacité de 232-1, si le résultat de l'addition dépasse cette valeur il redémare avec la valeur du résultat de l'addition - 232. On remarque que bien qu'il calcule sur 32 bits on n'a que 15 bits en sortie. Ces 15 bits sont en fait le 15 bits de poids fort du compteur, ce qui revient à diviser la valeur du compteur par 2(32-15) (c'est une division entière et tout ce qui est aprés la virgule est abandonné). Il faut donc si le compteur est à 0 que l'on additionne la valeur 217 pour que sa sortie passe à 1 et encore cette même valeur pour qu'elle passe à 2. Cette particularité permet d'avoir la très grande précision que l'on attribue au DDS tout en guardant une table de conversion phase->amplitude de dimension accéptable.

On peut donc résumer en disant que l'acumulateur de phase recoit depuis sa gauche une valeur entière proportionnelle à la fréquence que l'on désire, l'unité de cette valeur et égual à la fréquence de l'orloge/232 car pour générer un signal complet avec une valeur de 1 sur l'entrée de l'acumulateur de phase il faut 232 cycle d'horloge. Pour donné un exemple concret avec une hologe à 1GHz on à avec le circuit que l'on à analyser (AD9858 d'Analog device>) une précision de réglage de la fréquence de 1*109/232=0.233 Hz. Naturelement l'on peut considerer que ce n'est pas d'une grande précision mais il est tout à fait possible de diminuer la fréquence de l'horloge de façon à avoir une précision plus grande. C'est d'ailleur ce qui se passe avec des DDS basé sur des circuits beaucoup plus lent comme ceux utilisant des DSP ou de microprocesseur. On pourait donc se posé la question pourquoi j'ai pris en exemple une fréquence si grande. La fréquence de l'horloge ne determine pas que la précision mais egalement la fréquence maximum de sortie car le nombre maximum pouvant être fournit à l'acumulateur de phase 232/2 pour un signal sinusoidal afin de garder une calité spectrale correcte, c'est a dire la moitié de la fréquence d'horloge. Un autre moyen pour améliorer la précision de la fréquence est d'augmenter la capacité du compteur, certain système utilise des accumulateurs sur 64 bits ce qui leur permet d'annoncé des précisions impresionnantes mais c'est du vent car la précision de la fréquence dépend également de celle de l'horloge et il est impossible d'avoir une précision et une stabilité telle que l'utilisation d'un acumulateur de cette capacipté aille un sens.

Sweep part

Bon maitenant observons un peu la partie de gauche, en fait c'est un système permettant de faire varier la fréquence linéairement (sweep) afin de pouvoir par exemple balayer une plage de fréquence dans le but d'analyser un filtre. Pour ceci on aditionne une valeur toujours plus grande dans le temps au nombre réglant la fréquence de base. Ceci est en général definit par deux valeures, une représentant l'incrément de fréquence et l'autre le temps entre deux d'incrémentation de la fréquence.

Étage de sortie

J'ajouterai que ce type de générateur et suivit d'un filtre passe bas régler en général sur 1/3 de fréquence de l'horloge afin d'annuler certain signaux parasites. La description de ces signaux parasite sort un peu du cadre de cette description mais vous trouverez les informations nécessaires dans les liens de ce documents si vous voulez creuser le problème.

Quelques remarques

Actuellement ce type de générateur permet rarement de dépasser 2 GHz. Analog Devices offre actuellement un vaste choix de circuits permettant de ""facilement"" créer ce type de générateur bien que ceux-ci ne permettent que de générer des signaux sinusoidale, ce qui n'est pas réelement un problème en HF. Il est bien sur possible de créer ce type de générateur avec un simple microcontroleur ou un dsp pour des fréquences jusqu'à environ 50 MHz.


Conclusion

Ce type de générateur permet d'avoir une précision égale à la précision de l'horloge et à une pureté spéctrale trés bonne si l'on génére une fréquence bien au dessous de la fréquence de l'horloge et que le filtre passe bas et de bonne facture.

Par ailleur il permet d'avoir une grande agilité dans le changement de phase et de fréquence.

Quelques liens

Pour en savoir plus sur cette technologie voici quelques liens (principalements extraits du trés bon site de Jouko Vankka):