Hallo,
Ich benutze einen Spartan 6 mit 125MHz. Ich generiere mir über den
Xilinx DDS 4.0 ein Sinus Signal z.B. 1MHz (48bit).
Wenn ich das Signal im XY Plot darstelle und aus der DDS Sin und Cos
ausgebe, dann sehe ich auf dem Oszi ein „laufen“ des Signals, d.h.
Sin/Cos steht fest(Kreis), aber auf dem Signal wandern Punkte mit einer
sehr niedrigen Frequenz (einige Hz).
Siehe Bild xy/Video
Der gleiche Effekt tritt auf wenn ich 2 DDS benutze und diese über das
clear Signal synchronisiere.
Komischerweise scheint der Effekt bei 1,25MHz minimal zu sein. Bei
höheren oder tieferen Frequenzen tritt er verstärkt auf.
Für meine Anwendung will ich eine Grundfrequenz (z.B. 1,25MHz) und die
dazu exakt doppelte Frequenz erzeugen um ein phasenmoduliertes System
aufzubauen. Sprich ein externes System wird durch die Grundfrequenz
moduliert und die eigentliche Information (Im Testsetup ein mechanisch
erzeugter Sinus) aufmoduliert. Die Demodulation erfolgt dann im FPGA mit
der generierten Grund- und doppelten Frequenz. Im Resultat sieht mein
demoduliertes Signal dann so aus: (Bild Modulation)grün mit 1,25MHz gelb
mit 2,5MHz moduliert
Die Ursache für die parasitäre Modulation konnte auf das oben
beschriebene Problem eingegrenzt werden.
Hat jemand Ideen wo die Ursache liegen könnte? Oder wie ich den Effekt
unterdrücken kann.
Danke schon mal!
Sieht mir fast nach einem klassischen Aliasingproblem aus. Wenn die
Zeitäuflösung am Digitaloszi rher klein ist (ms/DIV und mehr), arbeitet
es mit verminderter Abtastrate, da kann sowas passieren.
Gegenmaßnahme: Anzahl der Samples erhöhen, das erhöhrt automatisch die
Abtastrate; Zeitauflösung erhöhen.
Falk Brunner schrieb:> Sieht mir fast nach einem klassischen Aliasingproblem aus
Das Foto dort scheint mir auch ein Kapitel aus "Wer Mist misst" zu sein.
500ms/div und 1MHz passen nicht zusammen...
Sindy schrieb:> Die Ursache für die parasitäre Modulation konnte auf das oben> beschriebene Problem eingegrenzt werden.
Was sagt eine Spektrumsanalyse? tauchen da auch mehrere Frequenzen auf?
Wenn das Frequenzverhältnis eines DDS (Sinusausgang zu Takt) nicht
exakte Vielfache sind, erhält man immer eine Schwebung. Besonders stark
nahe der obersten möglichen Frequenz (Nyquist) von 1/2 Taktfrequenz. Der
DDS durchläuft langsam seine Sinustabelle, einmal auf pos/neg
Spitzenwert, später auf den beiden Nulldurchgängen pro Schwingung. Das
ergibt eine 100-prozentige Amplitudenmodulation.
Christoph Kessler (db1uq) schrieb:> Besonders stark nahe der obersten möglichen Frequenz (Nyquist) von 1/2> Taktfrequenz. Der DDS durchläuft langsam seine Sinustabelle, einmal auf> pos/neg Spitzenwert, später auf den beiden Nulldurchgängen pro> Schwingung. Das ergibt eine 100-prozentige Amplitudenmodulation.
Aber so eine Konstellation sehe ich hier nicht...
@alex
>Wie viel Bit kann dein DAC?
48bit sind der Phaseincr. Wert, also die Frequenzauflösung (<50uHz)
nicht die Bits des DACs.
@Falk Leider ändert sich das Signal nicht beim Anzahl der Samples
erhöhen, also die parasitäre Modulation auf dem demodulieren Signal der
doppelten Frequenz bleibt
@Lothar
>500ms/div und 1MHz passen nicht zusammen..
dargestellt ist das demoduliertes Signal (ca 1kHz) von 1.25MHz bzw.
2.5MhHz als Trägerfrequenz. 500ms/div sind deshalb gewählt um die
parasitäre Modulation zu zeigen
>Was sagt eine Spektrumsanalyse? tauchen da auch mehrere Frequenzen auf?
ja die FFT zeigt beim demodulierten Signal von der doppelten Trägerfreq.
5Hz zusätzlich.
@Christoph
>Wenn das Frequenzverhältnis eines DDS (Sinusausgang zu Takt) nicht>exakte Vielfache sind, erhält man immer eine Schwebung
ja stimmt. Deshalb ist auch zum Clock der DDS von 125MHz 1.25 und 2.5Mhz
als gerade teilungsverhätlnisse gewählt worden.
Mir ist nicht klar, warum die Frequenzen der DDS nicht exakt doppelt so
gross sind, wenn beide mit gleichem Takt und doppeltem
Zählwert(Phaseincr.) arbeiten. Eigentlich sollte das Limitierende doch
bei der minimalen Frequenzauflösung der DDS liegen.
Sindy schrieb:> dargestellt ist das demoduliertes Signal (ca 1kHz) von 1.25MHz bzw.> 2.5MhHz als Trägerfrequenz. 500ms/div sind deshalb gewählt um die> parasitäre Modulation zu zeigen
Also 1kHz Signal und 5kS/s Abtastung (laut Screenshot): auch da sieht
man natürlich noch deutliche Schwebungseffekt. Lass dir vom Agilent die
Einhüllende der demodulierten Signale anzeigen. Schwebt es dann immer
noch?
Sindy schrieb:> Die Demodulation erfolgt dann im FPGA mit> der generierten Grund- und doppelten Frequenz.
Mit welcher Abtastrate, und was für digitale Filter hast du im Pfad des
demodulierten Signals, bevor es auf das Oszi geht?
Sindy schrieb:> Mir ist nicht klar, warum die Frequenzen der DDS nicht exakt doppelt so> gross sind, wenn beide mit gleichem Takt und doppeltem> Zählwert(Phaseincr.) arbeiten.
Wer behauptet, dass die erzeugte Frequenz nicht genau doppelt so groß
ist? Bei den von dir beschriebenen Bedingungen sind sie das.
>Mit welcher Abtastrate, und was für digitale Filter hast du im Pfad des>demodulierten Signals, bevor es auf das Oszi geht?
mit 125MSps werden die analogen Signale gesampled und im IIR 4th order
weiterverarbeitet
>Wer behauptet, dass die erzeugte Frequenz nicht genau doppelt so groß>ist? Bei den von dir beschriebenen Bedingungen sind sie das.
Ja, nach den Bedingungen sollten sie das sein. Woher kommt dann die
Schwebung, wenn die Frequenzen exakt doppelt so groß sind. Bei exakt
synhcronen sollte aber auch die Lissajour Figur fest stehen und nicht
durchlaufen, oder?
Sindy schrieb:> Wenn ich das Signal im XY Plot darstelle und aus der DDS Sin und Cos> ausgebe, dann sehe ich...
...genau den Mist, den du mit dem DDS erzeugst. Du scheinst mir zu wenig
auf analoge Belange zu achten, das ist wie ein reiner Programmierer, der
ein reales Gerät entwickeln soll und mit allem außerhalb seines
Programmier-Dunstkreises auf Kriegsfuß steht - insbesondere ggü.
jeglicher Hardware.
Also:
Jeder deiner Ausgänge bedarf eines Tiefpaßfilters, um aus den
zeitdiskreten Samples vernünftige Analogsignale zu erzeigen. Siehe dein
2. Bild.
Also bau dir zwei Tiefpässe und miß nochmal, dann wirst du es begreifen
- und deine Signale werden endlich schön aussehen.
W.S.
@ Sindy (Gast)
>>Wer behauptet, dass die erzeugte Frequenz nicht genau doppelt so groß>>ist? Bei den von dir beschriebenen Bedingungen sind sie das.>Ja, nach den Bedingungen sollten sie das sein. Woher kommt dann die>Schwebung, wenn die Frequenzen exakt doppelt so groß sind.
Von der Abtastung durch dein Digitaloszi! Nimm mal ein altes analoges
Oszi und staune.
> Bei exakt>synhcronen sollte aber auch die Lissajour Figur fest stehen
Das tut sie!
> und nicht durchlaufen, oder?
Das ist Rauschen bzw. die Abtastschwebung!
Wenn eine Lissajousfigur sich bewegt, dann hat man einen
Frequenzversatz. Du hast nur ein Ei, d.h. dein Phasenlage ist nicht
exakt 90° und die Amplituden sind auch nicht exakt gleich.
https://www.youtube.com/watch?v=t6nGiBzGLD8
> Deshalb ist auch zum Clock der DDS von 125MHz 1.25 und 2.5Mhz
als gerade teilungsverhätlnisse gewählt worden.
1.25 und 2.5 MHz sind eben keine geraden Teilverhältnisse im Sinne der
DDS.
1.25 ist 1/100 der Abtastfrequenz, bei einer 24bit DDS erhälst du also
2^24/100 = 167772.16 als "Teilverhältnis". Diese 0.16 sind es die die
Schwebung erzeugen.
Du musst eine Frequenz wählen bei der 2^24/(fa/fsin) eine ganze Zahl
ergibt. Wenn du es ganz sauber willst, wähle ein Verhältniss von 2^n,
also z.B 1/128 der Abtastfrequenz = 0.976 MHz Sinusfrequenz.
Andi