Bonsoir,
je cherche à modéliser de manière simple un DDS (Direct Digital Synthesizer) sous Matlab pour mettre en évidence les bruits de quantification.
Voilà comment je procède :
Voici mes 2 questions par rapport à ça :Code:bp = 48; %DDS 48 bits bd = 4; DAC 4 bits fs = 1e5; %frequence clock de 100kHz ts = 1/fs; N=100;% temps final en secondes freq = 110e2; %frequence voulue t = [1:ts:N+1]'; %temps ftw=round(freq./fs.*2^bp); %calcul du frequency tuning word fout=ftw.*fs/2^bp; %calcul de la fréquence réelle synthétisée phase=round(mod(fout.*t,1)*2^bp)/2^bp*2*pi; %calcul de la phase au cours du temps sout=round(sin(phase)*(2^bd-1)); % calcul du signal généré par le DAC sout=sout/(2^bd-1); %calcul du signal généré par le DAC
1) Est ce que la manière dont la quantification au passage du DAC est réalisée est bonne (les 2 dernieres lignes) ?
2) J'ai lu que les bruits de quantifications sont de type q2/12 où q = 2*Vmax/2n, avec Vmax l'amplitude max de sortie du DAC. Mettons que Vmax = 1 V donc avec n = 4 j'ai q = 0,125 soit q2/12 = 0,0013.
Le soucis c'est que comme j'ai pas bien compris ce que ça veut dire ce bruit de type q2/12 je ne sais pas non plus comment vérifier que dans mon cas j'ai 0,0013.
D'après ce que j'ai lu alors je dois commence par calculer e = sin(phase) - sout (donc la tete de mon signal avant de subir la quantification 4 bits du DAC auquel je soustrais le signal en sortie du DAC). Cependant je sais pas quoi faire avec ce "e" ensuite pour voir si je tombe sur 0,0013.
Quelqu'un peut m'expliquer svp ?
Merci d'avance o/
-----