Forum: Mikrocontroller und Digitale Elektronik AD9833 -> Jitter im Rechteck


von Hugo P. (portisch)


Lesenswert?

Hallo,

ich habe aktuell einen AD9833 als Clock-Generator im Einsatz.
Nun hat sich rausgestellt, dass dieser einen Jitter im Rechteck hat.
Und zwar genau 1/MCLK (f).
Bei meinen 24MHz also ~42ns.

Bei durchforsten des Internets bin ich dann auf den AD9834 gekommen der 
anscheinend dafür besser geeignet sein soll.
Dieser hat einen internen Komparator und soll angeblich den Rechteck 
Jitterfrei machen.

Leider finde ich aber keine Beispielschaltung dazu.

Ich habe eine 24MHz Clock und der Output vom DDS sollte 2,4MHz sein.

Hat hier jemand Erfahrungen mit dem AD9834?

von Pete K. (pete77)


Lesenswert?

Bei Analog Devices gibt es neben dem Datasheet auch einen Userguide. Da 
ist ein Beispiel angegeben.

von Pandur S. (jetztnicht)


Lesenswert?

> .. AD9833 als Clock-Generator im Einsatz. Mit Jitter.

Was bedeutet Jitter ? Wir der mit einem 555 Ersatz an der Referenz 
getrieben ?

Der Jitter des 9833 wird natuerlich nicht besser sein wie der seiner 
Referenz. Also brauchen wir deine Definition von Jitter, und deine 
Referenz (24MHz), Und das Schema.

Fuer einen Div 10 wuerd ich allerdings eher einen Teiler verwenden. 
Vereinfacht einen PLL, ohne VCO, zB einen ADF4001, und den Teilerausgang 
auf den separaten Pin.

von Achim S. (Gast)


Lesenswert?

@Hugo:
mal doof nachgefragt: bist du sicher, dass du das (exakt) richtige 
Frequency Tuning Word gesetzt hast? Wenn die Ausgabefrequenz ein 
ganzzahliger Bruchteil der Masterfrequenz ist (bei dir Faktor 10), würde 
ich nicht verstehen, warum das Rechteck einen Jitter von 1/MCLK haben 
sollte: nach jede Ausgangstakt sollte der Phasenakkumulator wieder beim 
identischen Wert starten.

Wenn hingegen das FTW z.B. um 1 zu groß oder zu klein ist, hast du zwar 
fast die selbe Ausgabefrequenz (der Frequenzunterschied ist kaum 
messbar), aber bei jedem Takt des Ausgangssignals sammelst du einen 
kleinen Phasenrest auf. Und zwar so lange, bis der Ausgangstakt ein mal 
um 42ns springt (so wie du es offenbar beobachtest).

von Hugo P. (portisch)


Angehängte Dateien:

Lesenswert?

Ich habe genau dieses Problem mit AD9833:
https://ez.analog.com/thread/6047?tstart=0

Die ~42ns sind unabhängig von der Ausgangsfrequenz des AD9833.
Die Clock ist sauber, kein Jitter.

Der im ADI Forum hat 25MHz was einem Jitter von 40ns (1/25000000) 
entspricht.
Und bei meinen 24MHz sind das dann genau die ~42ns.

von Possetitjel (Gast)


Lesenswert?

Hugo P. schrieb:

> Ich habe genau dieses Problem mit AD9833:
> https://ez.analog.com/thread/6047?tstart=0

Erstens ist Dein Schaltplan unvollständig, denn es fehlt
der Teil, der die Treppenspannung, die aus dem DDS kommt,
in ein Rechteck verwandelt.

Zweitens werde ich nie begreifen, wieso Menschen, die
relativ hochentwickelte Elektronik machen, eine derart
aggressive Abneigung gegen jede Form von analogem Tiefpass
haben.

Glaubt ihr denn, die Floskel "... für ein bandbegrenztes
Signal gilt..." steht nur im Lehrbuch, damit die überflüssige
Druckerschwärze verbraucht wird?

von Possetitjel (Gast)


Lesenswert?

Achim S. schrieb:

> bist du sicher, dass du das (exakt) richtige Frequency
> Tuning Word gesetzt hast? Wenn die Ausgabefrequenz ein
> ganzzahliger Bruchteil der Masterfrequenz ist (bei dir
> Faktor 10), würde ich nicht verstehen, warum das Rechteck
> einen Jitter von 1/MCLK haben sollte: nach jede Ausgangstakt
> sollte der Phasenakkumulator wieder beim identischen Wert
> starten.

Die Idee ist witzig, funktioniert aber nicht.

Der Vollkreis wird im DDS immer in 2^n Teile zerlegt. Für
Teilung durch 10 muss das Phasenincrement 2^n/10 betragen.
Das kann aber nie ein ganzer Wert sein, da die 10 den
Primfaktor 5 enthält, der trivialerweise in 2^n nicht
enthalten ist.

Der DDS kann also nur durch Zweierpotenzen ohne Fehler
teilen. Für beliebig wählbare ganze Faktoren ist man mit
einem programmierbaren Teiler i.d.R. besser bedient.

von Achim S. (Gast)


Lesenswert?

Possetitjel schrieb:
> er Vollkreis wird im DDS immer in 2^n Teile zerlegt. Für
> Teilung durch 10 muss das Phasenincrement 2^n/10 betragen.
> Das kann aber nie ein ganzer Wert sein, da die 10 den
> Primfaktor 5 enthält, der trivialerweise in 2^n nicht
> enthalten ist.
>
> Der DDS kann also nur durch Zweierpotenzen ohne Fehler
> teilen.

Da hast du leider recht. Also Hugo: jetzt weit du, welche 
Frequenzen/Teilerfaktoren du mit AD9833 "jitterfrei" erreichen kannst.

Possetitjel schrieb:
> denn es fehlt
> der Teil, der die Treppenspannung, die aus dem DDS kommt,
> in ein Rechteck verwandelt.

Ich denke, die Recheckspannung wird beim AD9833 direkt aus dem MSB des 
Phasenakkumulators abgeleitet - ohne Umweg über einen "Sägezahn", den 
man filtern könnte eher er auf einen Komparator geht. Das ist grade der 
Unterschied zur Rechteckgenerierung beim AD9834.

von Hugo P. (portisch)


Lesenswert?

> Erstens ist Dein Schaltplan unvollständig, denn es fehlt
> der Teil, der die Treppenspannung, die aus dem DDS kommt,
> in ein Rechteck verwandelt.
Datenblatt gelesen?

Egal, habe mir den AD9834 bestellt und werde versuchen damit eine 
saubere Clock hinzubekommen.

Das war eigentlich die Hauptfrage:
Beispielschaltung für den AD9834 als Clock Generator...

von Possetitjel (Gast)


Lesenswert?

Achim S. schrieb:

> Ich denke, die Recheckspannung wird beim AD9833 direkt
> aus dem MSB des Phasenakkumulators abgeleitet [...]

Das glaube ich auch.

Ohne jetzt jemanden persönlich beleidigen zu wollen: Ich
frage mich ganz ernsthaft, wer auf solche kranken Konzepte
kommt.

Die gesamte Nachrichtentechnik hat viele Jahrzehnte lang
große Problem gehabt, Oszillatoren zu entwickeln, die
gleichzeitig folgende Forderungen erfüllen:

1) spektrale Reinheit (--> guter Sinus),
2) Frequenzstabilität (--> geringe Drift),
3) einfache Frequenzvariation

Das DDS-Prinzip ist die optimale Lösung für das Problem,
hochwertige Sinus-Generatoren aufzubauen.

Warum kommen immer wieder Leute auf die Idee, mit einem
optimal als Sinus-Generator geeigneten Baustein - unter
Weglassung funktionell zwingend notwendiger Teile (des
Filters nämlich) - einen Rechteck-Generator aufzubauen?

Ist es die Faszination der vollintegrierten (vermeintlichen)
Rundum-sorglos-Lösung?
Ich werde das nie verstehen.

von Possetitjel (Gast)


Lesenswert?

Hugo P. schrieb:

>> Erstens ist Dein Schaltplan unvollständig, denn es fehlt
>> der Teil, der die Treppenspannung, die aus dem DDS kommt,
>> in ein Rechteck verwandelt.
> Datenblatt gelesen?

Natürlich.

Offenbar nicht aufmerksam genug. Mir ist trotzdem entgangen,
dass der Chip einen Ausgang für's MSB hat. --> broken by design.
(Fehlt also nicht im Schaltplan. Entschuldigung.)

Das erschüttert mich insofern, als ich Analog Devices solchen
Murks nicht zugetraut hätte. Gräuslich.

von Possetitjel (Gast)


Lesenswert?

Mist. Zu früh "Absenden" gedrückt.

Hugo P. schrieb:
> Egal, habe mir den AD9834 bestellt

Wozu?
Das geht auch mit dem AD9833.

> und werde versuchen damit eine saubere Clock hinzubekommen.
>
> Das war eigentlich die Hauptfrage:
> Beispielschaltung für den AD9834 als Clock Generator...

Standard, wie aus dem Lehrbuch: DDS, LC-Tiefpass, Komparator.
Wo ist das Problem?

von Lattice User (Gast)


Lesenswert?

Possetitjel schrieb:

Possetitjel schrieb:
> Offenbar nicht aufmerksam genug. Mir ist trotzdem entgangen,
> dass der Chip einen Ausgang für's MSB hat. --> broken by design.
> (Fehlt also nicht im Schaltplan. Entschuldigung.)
>
> Das erschüttert mich insofern, als ich Analog Devices solchen
> Murks nicht zugetraut hätte. Gräuslich.

Für viele Anwendungen reicht das.

> Wozu?
> Das geht auch mit dem AD9833.

Der AD9834 hat den Nulldurchgangs-Komparator bereits eingebaut, braucht 
also "nur" einen externen Filter.

>
>> und werde versuchen damit eine saubere Clock hinzubekommen.
>>
>> Das war eigentlich die Hauptfrage:
>> Beispielschaltung für den AD9834 als Clock Generator...
>
> Standard, wie aus dem Lehrbuch: DDS, LC-Tiefpass, Komparator.
> Wo ist das Problem?

@Hugo Siehe dazu:
AN-823 und AN-837
(Die AN-837 ist im Datenblatt des AD9834 verlinkt)

von Tcf K. (tcfkao)


Lesenswert?

Possetitjel schrieb:
> Warum kommen immer wieder Leute auf die Idee, mit einem
> optimal als Sinus-Generator geeigneten Baustein - unter
> Weglassung funktionell zwingend notwendiger Teile (des
> Filters nämlich) - einen Rechteck-Generator aufzubauen?
>
> Ist es die Faszination der vollintegrierten (vermeintlichen)
> Rundum-sorglos-Lösung?
> Ich werde das nie verstehen.

Bequemlichkeit, kein Interesse selber das Hirn anzustrengen, einfach 
alles in Spice kippen ohne zu wissen wie die einzelnen Bauteile 
funktionieren, wie so oft hier zu sehen...

von Pandur S. (jetztnicht)


Lesenswert?

> Mir ist trotzdem entgangen, dass der Chip einen Ausgang für's MSB hat. --> 
broken by design. (Fehlt also nicht im Schaltplan. Entschuldigung.) Das 
erschüttert mich insofern, als ich Analog Devices solchen Murks nicht zugetraut 
hätte. Gräuslich.


Weshalb Murks? Man muss sich nur im klaren Sein, was da rauskommt. 
Desgleichen beim fraktionalen PLL.


Gab es nicht mal Dekadenteiler ? 74HC162/63 74HC192 ? Womit es sicher 
geht ist ein 74HC592.
Den per Carry vom Buffer her neu laden, der kann auf irgendetwas <= 256 
zaehlen.

von Possetitjel (Gast)


Lesenswert?

Lattice User schrieb:

>> Das erschüttert mich insofern, als ich Analog Devices
>> solchen Murks nicht zugetraut hätte. Gräuslich.
>
> Für viele Anwendungen reicht das.

Ernst gemeinte Frage: Hast Du mal Beispiele?
Kämen diese Anwendungen nicht auch mit einer einfachen
PLL oder einem programmierbaren Teiler aus?

>> Wozu?
>> Das geht auch mit dem AD9833.
>
> Der AD9834 hat den Nulldurchgangs-Komparator bereits
> eingebaut, braucht also "nur" einen externen Filter.

Ist mir klar.

Ich bin davon ausgegangen, dass die Platine mit dem AD9833
schon fertig ist - sonst hätte er ja nix messen können. Für
ein Einzelstück genügt es, Filter und Komparator nachzuschalten.

von Possetitjel (Gast)


Lesenswert?

Oder D. schrieb:

> Weshalb Murks? Man muss sich nur im klaren Sein, was
> da rauskommt.

Weil ich mir gerade keine Anwendung vorstellen kann, bei der
man zwar einen DDS-Chip einsetzt, aber mit einem so stark
jitternden Rechteck zufrieden ist.

Wer einen DDS-Chip verbaut, hat dort i.d.R. einen Quarz als
Taktquelle und einen Mikrocontroller zum parametrieren des
DDS dran.
Mit dem ohnehin vorhandenen µC kann man sehr leicht ein
schlechtes Rechteck erzeugen, ohne einen DDS zu benötigen.
Wozu den DDS?

Ich sehe das Anwendungsfeld einfach nicht, wo das sinnvoll
wäre.

von Lattice User (Gast)


Lesenswert?

Possetitjel schrieb:
> Lattice User schrieb:
>
>>> Das erschüttert mich insofern, als ich Analog Devices
>>> solchen Murks nicht zugetraut hätte. Gräuslich.
>>
>> Für viele Anwendungen reicht das.
>
> Ernst gemeinte Frage: Hast Du mal Beispiele?
> Kämen diese Anwendungen nicht auch mit einer einfachen
> PLL oder einem programmierbaren Teiler aus?
>

Tracking Applikationen, Clockrecovery, d.h. wenn du die Abstimmbarkeit 
der DDS brauchst, aber der Jitter egal ist.

Ich gehe davon aus, dass Hugo die Abstimmbarkeit braicht. Wenn nicht, 
haben wir die sprichwörtlich Kanone auf Spatzen Methode.

von Hugo P. (portisch)


Lesenswert?

Wir brauchen den DDS zum ansteuern ein H-Brücke (4 Gates).
Zwischen DDS und H Brücke sitzt noch ein CPLD der das 2,4MHz in ein 
400kHz Gate Signal aufteilt.

Die Idee ist nicht von mir sondern auch von großen Herstellern von 
RF-Generator üblich...

von Pandur S. (jetztnicht)


Lesenswert?

Dann man das MSB an einem Pin, wahlweise, rauslassen kann ist eher fuer 
Debugfunktionen gut, denk ich. Moegliche weitere Anwendungen waeren zB :

das MSB auf den Interrupt und dann Register neu beschreiben. So kann man 
zB Frequenzhopping machen.

von Lattice User (Gast)


Lesenswert?

Hugo P. schrieb:
> Wir brauchen den DDS zum ansteuern ein H-Brücke (4 Gates).
> Zwischen DDS und H Brücke sitzt noch ein CPLD der das 2,4MHz in ein
> 400kHz Gate Signal aufteilt.
>
> Die Idee ist nicht von mir sondern auch von großen Herstellern von
> RF-Generator üblich...

Wenn du ein festes Teilerverhältnis von exakt 1/10 brauchst, ist die DDS 
wirklich die Kanonenmethode. Z.B. ein 74HC4017 ist um Grössenordnungen 
geringerer Aufwand. Ausserdem kann das der CPLD auch nebenher 
miterledigen.

von Jens (Gast)


Lesenswert?

Hugo P. schrieb:
> ich habe aktuell einen AD9833 als Clock-Generator im Einsatz.
> Nun hat sich rausgestellt, dass dieser einen Jitter im Rechteck hat.
> Und zwar genau 1/MCLK (f).
Wie Du nun schon erkannt hast, ist genau dieses Verhalten dem 
DDS-Prinzip zuzuschreiben.

Possetitjel schrieb:
> Mir ist trotzdem entgangen,
> dass der Chip einen Ausgang für's MSB hat. --> broken by design.
Das MSB war sowieso da und ein Pin war noch übrig.
Das Marketing wollte den Chip als Waveformgenerator verticken und da 
klingt Sinus/Dreieck/Rechteck eben besser...
Alles ganz normal also.

Ich habe auch eine ganze Weile gebraucht, um zu bgreifen, das DDS nicht 
so das Gelbe vom Ei ist.

Jens

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

DDS hat prinzipiell vor allem nahe Nyquist eine AM, es sei denn, man 
teilt damit wie schon gesagt wurde die Taktfrequenz durch eine 
Zweierpotenz.

DDS genau auf Nyquist -> zwei Stützstellen pro Schwingung. Die können je 
nach Startpunkt auf dem oberen und unteren Maximum des Sinus liegen. 
Genausogut auf den beiden Nulldurchgängen, dann kommt überhaupt keine 
Schwingung raus.

Gehen wir nur 1 Hz darunter, dann werden diese beiden Amplitudenwerte 
periodisch durchlaufen, der DDS-Sinus hat 100% Amplitudenmodulation mit 
1 Hz.
Ich denke, eigentlich ist das eine Modulation "Doppelseitenband mit 
unterdrücktem Träger", denn Nyquist + 1 Hz ist spektral im Sinus genauso 
stark enthalten.

Erst mehrere Oktaven unter Nyquist ist ein DDS sauber. Spektral würde 
das heißen, die Summenfrequenz ist ausreichend unterdrückt, nur die 
Differenzfrequenz ist noch da. Ob man das so betrachten kann bin ich 
nicht sicher, hab es noch nirgends so gelesen.
Frühe Applikationen von AD zu DDS weisen genau auf das geschilderte 
Problem hin.
Dagegen hilft auch kein Komparator.

von Possetitjel (Gast)


Lesenswert?

Jens schrieb:

> Ich habe auch eine ganze Weile gebraucht, um zu bgreifen,
> das DDS nicht so das Gelbe vom Ei ist.

Das würde ich in dieser Form nicht unterschreiben.

Man muss halt wissen, was das Verfahren kann - nämlich
primär SINUS-Schwingungen erzeugen. Wenn man dann noch
weit genug vom Takt wegbleibt (f_signal < f_takt/3) und
einen guten Tiefpass verwendet, wird alles gut.

Missachten dieser Bedingungen rächt sich.

von Possetitjel (Gast)


Lesenswert?

Christoph K. schrieb:

> Ich denke, eigentlich ist das eine Modulation
> "Doppelseitenband mit unterdrücktem Träger", denn
> Nyquist + 1 Hz ist spektral im Sinus genauso
> stark enthalten.

Ja, nahezu.
Über allem liegt, glaube ich, eine sin(x)/x-Hüllkurve.

> Erst mehrere Oktaven unter Nyquist ist ein DDS sauber.
> Spektral würde das heißen, die Summenfrequenz ist
> ausreichend unterdrückt, nur die Differenzfrequenz ist
> noch da. Ob man das so betrachten kann bin ich
> nicht sicher, hab es noch nirgends so gelesen.

Ja, doch.
Soweit ich weiss, geht ein Nutzsignal unterhalb Nyquist
immer mit einer Alias-Linie oberhalb einher. Spiegelfrequenz
sozusagen. Allerdings haben die Alias-Linien geringere
Amplitude (wegen sin(x)/x).

> Dagegen hilft auch kein Komparator.

Doch, indirekt: Man kann einen vernünftigen Tiefpass
zwischen DDS und Komparator verwenden.

von Hugo P. (portisch)


Angehängte Dateien:

Lesenswert?

Um das ganze hier abzuschliessen:
Ich habe nun den AD9834 in Betrieb genommen.
Und wie das Oszi-Bild zeigt erzeugt dieser einen einwandfreien
Clock Impuls ohne Jittern wie der AD9833.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.