Nochmal DDS als Frequenzteiler

Also ich fand den Thread mit dem DDS Frequenzteiler in einer PLL ja sehr interessant. Mich würden aber noch ein paar theoretische Details interessieren:

Ich gebe auf den Eingang ein Taktsignal, mit dem ich den DDs-Ausgang jeweils um eine bestimmte Phasendifferenz weiterschalte. Je nachdem, wie groß die Phasenschritte sind, habe ich am Ausgang z.B. ein sinusförmiges Signal, dessen Frequenz fa sich aus fa=fe*deltafi/2Pi ergibt. Damit kann ich jetzt auch nichtganzzahlige Teilungsverhältnisse realisieren. Wie man das mit einem Zähler, ROM und DA-Wandler realisieren kann, ist mir schon klar. Aber irgendwann erreiche ich das Ende der Tabelle.

Wie verhindert man nun Phasensprünge, wenn zum Tabellenanfang zurückgesprungen wird, oder wird das einfach hingenommen?

Wenn man so einen variablen Frequenzteiler nun für eine PLL verwendet, speist man das Signal in einen Phasendetektor ein. Das geht auch mit Rechtecksignalen. Könnte man in dem Fall auf die Tabelle und den DA verzichten, oder würde das zu einem starken Jitter führen, den ich mit dem Schleifenfilter nicht mehr unterdrücken kann?

Gruß

Stefan

Reply to
Stefan Brröring
Loading thread data ...

Man springt nicht genau zum Anfang der Tabelle, sondern rechnet einfach modulo 360 Grad. Also für 10°-Schritte:

333, 343, 353, 3, 13, 23 usw.

Das ergibt sich bei 2er-Komplement-Arithmetik im Phasenakku völlig von selbst wenn man das Carry_out einfach wegwirft.

das würde zu schlimmen Jitter führen. Auf den Tiefpass nach dem D/A kann man normalerweise auch nicht verzichten.

Ohne Tiefpass kann man den Sinus am D/A-Ausgang mit dem Oszillografen optisch nicht als solchen erkennen, wenn der Takt nicht sehr hoch gegen die Ausgangsfrequenz ist.

Gruß, Gerhard

Reply to
Gerhard Hoffmann

Gerhard Hoffmann schrieb:

Schwieriger wird es dann, wenn man nur einen Viertelsinus im ROM hat und die Zählrichtung und das Vorzeichen umschalten muss... :-)

Gruß Henning

--
henning paul home:  http://home.arcor.de/henning.paul
PM: henningpaul@gmx.de , ICQ: 111044613
Reply to
Henning Paul

Hallo Gerhard,

Gerhard Hoffmann schrieb:

genauso habe ich das kürzlich mal in einem uC realisiert, in C kann man den Zeiger auf die Speicherstellen mit einer mod()-Funktion hochzählen, funktioniert problemlos.

Wenn man nur 1 Quadranten in der Tabelle benutzt, wird die Auswertung komplizierter, das Prinzip ändert sich aber nicht grundsätzlich. Das wurde bei uns auch mal mit uC getestet.

Hm, hier bin ich anderer Meinung, man kann IMHO auf beides verzichten,da ja kein Sinus benötigt wird. Man kann die DDS soweit abmagern, daß sie nur noch aus Akkumulator und 2 Vergleichern für die Umschaltschwellen des Rechtecks besteht. Somit spart man auch den RAM ein.

Der Jitter wird IMHO davon nicht beeinflußt, nur die Oberwellen der Rechteckfunktion sind natürlich größer als beim Sinus, das stört aber die PLL nicht. Für die Schaltflanken ist das Schleifenfilter zuständig, und das bekommt immer digitale Impulse.

Der Jitter ensteht in allen Fällen, egal ob Sinustabelle oder nicht, durch die nichtperiodische abgetastete Funktion, der Nulldurchgang oder die Schaltflanke sind von einer zur nächsten Periode nicht an derselben Stelle. In Wirklichkeit ist sie sehr wohl periodisch, aber mit kleiner Frequenz als die des abgetasteten Signals (in Tabelle z.B.). Wenn mich nicht alles täuscht, steht diese Periode in einem ganzzahligen Verhältnis zur "Signalperiode", deshalb nehme ich Subharmonische im Spektrum an. Diese Subharmonischen dürften aber nur beim Rechteck auftreten, beim Sinus jedoch nicht. Da der Phasendiskriminator aber digital arbeitet, bekommt man sie nicht weg.

Es kann allerdings sein, daß bei DDS mit Sinus der Rekonstruktionstiefpaß vor dem Komparator das Jittern _nach_ dem Komparator vielleicht verbessert, das überschaue ich jetzt nicht ganz, kommt auf die Grenzfrequenz des Tiefpasses auch an..

Das spielt für den digitalen Phasendiskriminator keine Rolle, der sieht nur die Umschaltzeitpunkte. Ohne DA-Wandler hat man sich den anfälligen Komparator gespart.

mfg. Winfried

Reply to
Winfried Salomon

"Winfried Salomon" schrieb im Newsbeitrag news:f8qrib$kdn$03$ snipped-for-privacy@news.t-online.com...

Hallo Winfied,

Da muss ich leider dagegen halten. Ohne Sinus-Tabelle und Filter geht es per Prinzip nicht.

Stell dir vor du hast 10,5 Punkte pro Periode. Dann hast du abwechselnd nach 10 bzw. 11 Perioden einen Nulldurchgang, wenn du das ohne Filter machst. Da "eiert" die PLL dann ständig herum. Mit beliebig krummen Zahlen kann man das hinter dem Phasendetektor nie mehr wegfiltern da dieser Jitter beliebig niederfrequent werden kann.

Mit Filter und Analog-Comparator bekommst du immer exakt nach 10,5 Takt-Perioden die Flanke für den Phasenkomparator. Genauso gut hilft das Filter bei beliebig krummen Frequenzen.

Gruß Helmut

Reply to
Helmut Sennewald

Wenn ich in der Planungsphase soweit gewesen wäre, hätte ich vielleicht einen FPGA für die 3 DDS-Kanäle benutzt, die ich brauche. Nur einer davon soll wirklich einen Sinus erzeugen, die beiden anderen haben einen Komparator hinter und machen wieder Rechtecke draus (einmal wegen der Anforderungen der PLL an die Steilheit der Eingangssignale, einmal um ein PECL-Signal für eine VCSEL-Diode in einem Gigabit-Transceiver zu erzeugen) Naja nun sitzt der AD9959 mit seinen 56 Nichtbeinchen auf der Platine, nun bleibt's auch dabei :) Dazu fällt mir allerdings ein, dass einige der AD DDS-Chips einen Komparator an Bord hatten, gerade um aus dem gefiltertern Sinus wieder ein Rechteck zu machen. Insofern hätte ich beinahe gesagt, an Deinen Überlegungen ist irgendwo ein Haken, aber andererseits habe ich aus einem DDS auch schon ein vernünftiges Dreieck geholt, nur musste ich da den Filter natürlich anders ansetzen, so dass die maximale Frequenz meines Signals entsprechend gering ausfiel.

Reply to
Stefan Huebner

Hmm.. ich schrieb Filter, richtig? Also doch wieder ein Filter. Irgendwie habe ich ein Problem damit, mir eine DDS ohne Filter vorzustellen. Aber man könnte die Filterung und den anschliessenden Vergleich mit den Schwellen digital erledigen. Nur bleibt dann das Problem, das in meinem Fall sinusförmige Referenzsignal für die PLL aufzubereiten. Naja, ist sowieso alles hypothetisch und allenfalls für den Ausblick geeignet.

Reply to
Stefan Huebner

"Stefan Huebner" schrieb im Newsbeitrag news: snipped-for-privacy@4ax.com...

Stefan,

Glaube mir, das Filter und der Analog-Komparator sind ein muss! Wer das Gegenteil behauptet, hat DDS nicht verstanden.

Gruß Helmut

Reply to
Helmut Sennewald

Ack.

Deshalb setzten Chip-Designer, die einen beliebigen Teilungsfaktor trotz hoher Phasendetektor-Frequenz für eine PLL ohne analogen Tiefpass hinbekommen wollen, auf einen Ein-Bit Sigma-Delta D/A Wandler. Dieser steuert dann wie bei einer Fractional PLL den Teilungsfaktor des Hauptteilers um, gegenüber einem Modulo-Register wie bei ursprünglichen Fractional PLL's sind Nebenlinien etc. im allgemeinen geringer.

Beim Sigma-Delta D/A wird der Modulator digital nachgebildet, d.h. Differenzbildung, Integrator, Entscheider usw. alles per Registerarithmetik, das Ergebnis vom Entscheider steuert dann den Hauptteiler um. Die Daten für den Modulator können dabei durchaus von einem Phasenakku kommen, man kann in gewissen Grenzen sogar die _Phase_ des VCO im Vergleich zum Referenztakt steuern.

( Die SIgmal-Delta Wandlung läßt sich leicht nachvollziehen, ca. 20 Zeilen C reichen für ein Demoprogramm. )

Bei geeigneter Gestaltung wird der Jitter dann hinreichend hochfrequent und kann vom Schleifenfilter geschluckt werden, die sichtbaren Nebenlinien (Spurs) werden so reduziert, wenngleich natürlich auch nicht 100% gebannt.

Analog Devices und Skyworks haben entsprechende PLL Bausteine.

Gruß Oliver

--
Oliver Bartels + Erding, Germany + obartels@bartels.de
http://www.bartels.de + Phone: +49-8122-9729-0 Fax: -10
Reply to
Oliver Bartels

"Oliver Bartels" schrieb im Newsbeitrag news: snipped-for-privacy@4ax.com...

Hallo Oliver,

Danke für die Erinnerung an Sigma-Delta fractional dividers. Kann man die eigentlich guten Gewissens in ein FPGA packen, oder ist diese Technologie total mit Patenten vermint oder sind diese Patente schon abgelaufen?

Totzdem hat natürlich DDS einen großen Vorteil. Die Frequenz lässt sich schneller umschalten als bei jedem anderen Verfahren. Davon hat man natürlich u.U. nicht sehr viel wenn man die erzeugte Frequenz als Referenz in einer PLL einsetzt.

Gruß Helmut

Reply to
Helmut Sennewald

Genauso hatte ich mir das vorgestellt, war nur über einige Postings in dem anderen Threads über PLL mit DDs gestolpert und wollte nochmal nachfragen.

Das war auch schon mein Gedanke. Mit nem ATmega16 müsste man das mit einem Eingangstakt von ca. 1 MHz realisieren können. Würde man dann auf die Sinustabelle verzichten können, könnte man den Phasendetektor gleich mit programmieren. Mal abgesehen davon, dass der Quarzoszillator an einem uc vermutlich Störungen verursachen würde.

Daran hatte ich auch gedacht, aber wie anderswo zu lesen ist, kann der Jitter beliebig niederfrequent werden und läßt sich dann mit dem Schleifenfilter nicht mehr unterdrücken. Die Lösung aus Sinustabelle und Tiefpass mit nachgeschaltetem Komparator und digitalem Phasendetektor bringt dann praktisch eine Interpolation zwischen den einzelnen Punkten auf der Sinuskurve.

Stefan

Reply to
Stefan Brröring

Fractional selber ist pre 1990 und abgelaufen, bei Sigma Delta fractional gibt es wohl Patente von 1992, ansonsten natürlich heute viel Kleingeschiss mit "ich hab aber hier noch einen Draht extra geschaltet", der vermutlich eine Nachprüfung nicht lange überleben dürfte.

In Europa wirst Du damit eher wenig Stress haben, weil da nur gilt, was im Patent auch drin steht, und nix anderes, und weil Prior Art eben Prior Art ist und bleibt, und weil Fachleute über einen Fall entscheiden. Bestenfalls gibt es ein paar Prozent vom Produktumsatz bei eh' sehr alten "inzwischen Stand der Technik" Patenten.

In den USA wird sich bei hinreichendem Produkterfolg sicher einer finden, der Dich verklagt und dabei eine Jury aus 12 gestandenen Amis (nein, keine Fachleute) davon zu überzeugen versucht, dass man das eigene gerade eben eingereichte und kaum geprüft durchgewinkte Patent doch ganz anders interpretieren könnte, nämlich so, dass es allumfassend ist und die Einschränkung mit den drei Extraelementen, die wegen klarer Prior Art im Hauptanspruch gilt, doch eigentlich vernachlässigbar sei. Und wenn der bzw. seine Anwälte dann eine genügend gute Theatervorstellung ("der arme US Erfinder, der hier vom bösen Sennewald Konzern ausgebeutet wird") abliefern, kann es ein entsprechendes Urteil geben.

=> Wenn hier immer über US Standorte gejubelt wird, möchte ich doch mal einen ganz wesentlichen Vorteil der EU herausstellen: Die _Rechtssicherheit_. Ein Jury Trial in Patentsachen gibt es hierzulande nicht.

Nur: Technisch lohnt der Eigenbau per FPGA eher nicht, Du bekommst den Übergang in die analoge Domain kaum so gut hin wie ein Custom-IC mit vielen gesteuerten Stromquellen (inzwischen bis 64!), es gibt von A wie Analog Devices bis S wie Skyworks genügend gute und preiswerte Produkte am Markt, mit Fast Sweep, mit Modulationseingang, bis 6 GHz usw.

Für das Verständnis ist ein Testaufbau oder eine Simulation in Software allerdings schon hilfreich, man lernt, wo die Spurs herkommen.

Ganz klar, deshalb nimmt man ja auch normalerweise den DDS Ausgang direkt.

Eben, das macht man eher aus Kostengründen, und dann bietet sich Sigma Delta Fractional ganz ohne D/A an.

Gruß Oliver

--
Oliver Bartels + Erding, Germany + obartels@bartels.de
http://www.bartels.de + Phone: +49-8122-9729-0 Fax: -10
Reply to
Oliver Bartels

Helmut Sennewald schrieb:

Man kann versuchen sich das Ganze mal durch den Kopf gehen zu lassen. Wenn der Baustein das Rechteck direkt erzeugen soll, so würde man den Komparator digital nachbilden, also positiver Sinus -> 1, negativer Sinus -> 0. Dann kann man die Sinustabelle auch gleich zur Hälfte mit 1 füllen und die andere Hälfte mit 0. Jetzt kann man die Tabelle mal im Kopf mit verschiedenen Schrittweiten durchlaufen. Ekelhafter Jitter ensteht da recht schnell.

Reply to
Heiko Lechner

Hallo Helmut,

hoppla, da muß ich Dir doch recht geben, war mein Fehler. Ich hatte mich zu sehr auf die Nulldurchgänge konzentriert, dabei kann der Sinus ja quasi ideal mit dem Tiefpaß rekonstruiert werden. Bleibt nur das Problem mit dem Komparator übrig.

Wenn man es rein digital machen will, gibt es bessere Verfahren, da hat Oliver schon was dazu geschrieben. Mit Sigma-Delta-Modulator und anderen Verfahren wurde das bei uns schon untersucht, ist aber schon etwas her und ich habe die Einzelheiten nicht parat.

mfg. Winfried

Reply to
Winfried Salomon

Hallo Stefan,

400 MHz kommen mir für ein FPGA etwas hoch vor, da wäre ich skeptisch.

Ja, ich muß mich auch leider korrigieren. Das Vorzeichenbit und der gefilterte Sinus der DDS liefern natürlich nicht die gleichen Nulldurchgänge, sondern nur das Vorzeichenbit jittert. Dein Komparator nach dem Tiefpaß sollte jedoch nicht jittern. Entschuldige bitte die Verwirrung, die ich angerichtet habe.

So gesehen tritt bei Dir neben dem möglicherweise schwingenden Komparator noch ein weiteres Problem auf, das bei hohen Sinus-Frequenzen offenbar zu erhöhtem Jittern am Komparator führt. Ich kann jetzt nur mutmaßen, daß Dein Tiefpaß bei 180 MHz und bei 7. Ordnung nicht sauber funktioniert, also ein großes feedtrough und geringe Sperrdämpfung hat. Da ich auch schon die Probleme bei solchen LC-Kettenleitern hatte, würde ich den Tiefpaß vielleicht näher untersuchen.

Layoutbedingte Kopplungen und Effekte spielen vermutlich auch eine Rolle, wie an anderer Stelle schon diskutiert.

mfg. Winfried

Reply to
Winfried Salomon

Hallo Stefan,

Stefan Brröring schrieb:

ob man die ganze PLL mit Schleifenfilter ohne VCO im uC digital realisieren kann, kann ich jetzt nicht genau sagen, das Abtasttheorem darf nicht dazwischenfunken. Auf die Sinustabelle zu verzichten, ist ohne Jitter leider nicht möglich, war ein Fehler von mir.

Wenn es rein digital gelöst werden soll, müßte die Interpolation mit oversampling und digitaler Filterung auch möglich sein, um das Jittern zu verringern. Alternativ könnte die Tabelle verlängert und die Abtastfrequenz entsprechend erhöht werden, nur hat ein uC eine begrenzte Leistungsfähigkeit.

mfg. Winfried

Reply to
Winfried Salomon

"Oliver Bartels" schrieb im Newsbeitrag news: snipped-for-privacy@4ax.com...

Hallo Oliver, vielen Dank für die ausführliche Antwort. Das sieht ja schon mal ganz gut aus bezüglich Patentlage. Ich glaub in dem zweiten Buch unten war der Tipp bei Mash-Struktur auf keinen Fall 2.Ordnung sondern 3.Ordnung oder höher zu nehmen. Und was sehe ich hier? Modulator 3.Ordnung.

formatting link
Bei den Preisen sieht ja jede FPGA-Lösung plus externem Modulus Prescaler ganz alt aus. Danke für den Hinweis auf AD.

Kennt jemand noch andere Bücher über Delta-Sigma die man sich mal ansehen sollte? Nicht dass ich das jetzt beruflich unbedingt bräuchte, aber es interessiert mich eben. OK, manchmal muss ich bei den Entwicklern auch mal etwas Aufklärung betreiben. :-)

Gruß Helmut

Titel: Understanding Delta-Sigma data converters / Richard Schreier; Gabor C. Temes Verfasser: Schreier, Richard ; Temes, Gabor C. Erschienen: Piscataway, NJ : IEEE Press Hoboken, NJ : Wiley Interscience, c2005 Umfang: XII, 445 S. : graph. Darst. ; 25 cm Anmerkung: : £58.50 ISBN: 0-471-46585-2

Titel: Delta-sigma data converters : theory, design, and simulation / ed. by Steven R. Norsworthy ... IEEE, the Institute of Electrical and Electronics Engineers, Inc., New York Beteiligt: Norsworthy, Steven R. Körperschaft: Institute of Electrical and Electronics Engineers *1963 -* Erschienen: [Hoboken, NJ] [u.a.] : Wiley-Interscience [u.a.], 1997 Umfang: XXIII, 476 S. : graph. Darst. ISBN: 0-7803-1045-4

Reply to
Helmut Sennewald

Hallo Heiko,

Heiko Lechner schrieb:

also ohne DA-Wandler und Tabelle bekommt man den Jitter nur kleiner, indem man den Akkumulator länger macht. Dazu müßte man entweder die Taktfrequenz erhöhen oder die Signal-(Rechteck-) Frequenz absenken. Um den Jitter gegen 0 zu bringen, müßte der Aufwand gegen unendlich steigen.

:-)

mfg. Winfried

Reply to
Winfried Salomon

Richtig, geht aber ja nur ums Funktionsprinzip. Hab das mal so überschlagen, also eine DDS mit nem Eingangstakt von 1 MHz müsste man mit nem ATmega und 16 MHz Prozessortakt realisieren können. Der Rest klappt dann nicht mehr.

Gruß

Stefan

Reply to
Stefan Brröring

Hallo Oliver,

[...]

Stimme Dir zu. Allerdings war es das beinahe auch schon. Neben der Rechtssicherheit muss es jedoch auch eine Planungssicherheit geben und die wird in Europa leider arg marodiert: Steuergesetze werden alle Nase lang grundlegend geaendert. Eurokraten schaffen Huerden wie RoHS und Buerokratiebarrieren wie WEEE. In der Regel alles, ohne gross mit den "Stake Holders", also betroffenen Leuten und Unternehmen, einen Dialog zu fuehren. Wozu Dialog? Die haben das gefaelligst zu fressen. Basta (oder wie hatte mal jemand gesagt ....).

Jedenfalls finden das hiesige Unternehmen, die sich international ausbreiten wollen, gar nicht gut. Die gehen dann lieber in Laender, wo mehr Planungssicherheit herrscht oder wo sie aufgrund des Investitionsvolumens vorher, ahem, konsultiert werden.

[...]
--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.