hulp op FFT!

N

newbie_1

Guest
hoi,
Ik heb een ideale 20bit ADC en 20bit DAC met veriloga en getest ze met een 15kHz sinwave als input, de CLK freq is 12.5MHz.De output van de DAC werd dumping uit cadans als out222.dat met ocnPrint met een tijd stap van 80ns.
i wote een eenvoudige Matlab programma (snr_out2a.m) en plot het spectrum van het uitgangssignaal, maar het spectrum is totaal verkeerd coz de SNR is echt slecht en eigenlijk moet minimaal 120dB.
vertel me wat er mis is met het programma, en ik heb enkele vragen:
1.wat moet de Freq in Matlab programma?moet dezelfde zijn als die gebruikt worden in advertentie en da?
2.het gegevens dumping uit cadans had geen betrekking op een geheel getal num periodes, dan moet ik gebruiken sommige venster functie?hoe zit Hann?en als ik gebruik Hanning, is mijn gebruikt als line19 correct?en zolang de gegevens niet genoeg monsters, hoe kan ik doen veel grotere num punten van FFT?

thanks very much
newbie
Sorry, maar je moet inloggen om deze gehechtheid

 
U moet u de sample rate waarde in MATLAB hetzelfde te zijn als uw hardware.

Ja, je moet het toepassen van een venster voor het doen van een FFT van gegevens met een niet-integer aantal monsters.Uw Hann () code ziet er prima, maar je kent de resut te data2 die je overal gebruiken.

Verschillende venster functies geven verschillende sidelobe demping.U moet kiezen voor een raam dat past bij uw behoeften.Voor 120 dB, veronderstel ik je kon een Kaiser-venster gebruiken met een grote bèta.

"... Zolang de gegevens niet genoeg monsters, hoe kan ik doen veel grotere num punten van FFT?"
Ik begrijp niet de vraag.Please herformuleren.

Hier is een andere benadering:
Code:

belasting out222.dat;

out222 = out222 (1:5000,:);% trim van de gegevens

y = out222 :), 2);% gegevens

N = length (y);% aantal punten

fs = 12.5e6;% sample rate

h = fft (y .* Kaiser (N, 10));% venster overbodig indien de gegevens integer cycli is

freq = fs * (0: N / 2) / N;

subplot (2,1,1), plot (freq, 20 * log10 (2 / N * abs (h (1: N / 2 1 )))); xlabel ( 'Hertz');

subplot (2,1,2), plot (y);
 
hi echo47
heel hartelijk dank voor uw antwoord.
en het is een fout die ik niet gebruik data2.
en de vraag is, als ik het gebruik Hann venster en omdat de input data slechts over beperkte numer punten, bijvoorbeeld 6000 punten, hoe kan ik 16384 punten van FFT gebruik nog steeds Hann window?

en kunt u mij vertellen waarom u gebruik Kaiser en gebruik zulke hoge beta?

echt thanks a lot.

newbie

 
Ik nog steeds niet begrijp uw vraag over het aantal punten.U kunt elk type raam op een aantal punten, en je kunt doen een FFT van een aantal punten (hoewel de bevoegdheden van de twee zijn meestal sneller).

Kaiser is een handig verstelbaar venster.Een hoge bèta geeft lagere sidelobes maar breder hoofdlus.U kunt kiezen welk venster aan uw behoeften voldoet.

 

Welcome to EDABoard.com

Sponsor

Back
Top