DDS-Betrieb und weitere Signalformbetrachtungen
In diesem Abschnitt finden Sie einige weitere Informationen zum DDS-Betrieb, als Hintergrund für
ein besseres Verständnis der Vorteile und Einschränkungen der DDS-Signalerzeugung.
DDS Betrieb
10 Bit
Ein kompletter Zyklus der gewählten Signalform ist im RAM aus 1024 10-Bit Amplitudenwerten
abgespeichert. Mit erhöhen der RAM Adresse werden die Amplitudenwerte sequentiell auf einen
Digital-Analog-Umsetzer (DAU bzw. DAC) gegeben, der das Signal aus einer Reihe von
Spannungsstufen rekonstruiert. Sinus und Dreieck werden nachfolgend gefiltert, um die Stufen
des DAU-Ausgangs zu glätten.
Die Frequenz des Ausgangssignals wird von der Rate der RAM-Adresserhöhung bestimmt. In
einem DDS-System wird die Adresserhöhung wie folgt realisiert.
Der RAM enthält die Amplitudenwerte aller individuellen Punkte eines Zyklus (360°) der
Signalform. Jede sequentielle Adressänderung entspricht einem Phasenzuwachs von 360°/1024.
Anstelle eines Zählers, der die sequentiellen RAM-Adressen generiert, wird ein
Phasenakkumulator zum Erhöhen der Phase verwendet.
Bei jedem Taktzyklus wird der Phasenzuwachs, der von der CPU in das Phasenzuwachsregister
(Phase Increment Register) geladen wurde, zum momentanen Ergebnis im Phasenakkumulator
dazuaddiert. Die 10 höherwertigsten Bits des Phasenakkumulators steuern die Adressleitungen
des RAM. Die Frequenz des Ausgangssignals wird nun vom Phasenzuwachs mit jedem Takt
bestimmt. Bei gleichem Zuwachs ist die Frequenz konstant, ist der Zuwachs nicht gleich, ändert
sich die Frequenz, aber phasenkontinuierlich.
Der Generator verwendet einen 38-bit Akkumulator und eine Taktfrequenz von 2
(~27,·487MHz). Dies führt zu einer Frequenzauflösung (entsprechend dem kleinsten
Phasenzuwachs) von f
Nur die 10 höherwertigsten Bits des Phasenakkumulators werden für die RAM Adresse benutzt.
Bei einer Signalfrequenz von f
Adresse mit jedem Takt erhöht. Bei allen Frequenzen darunter (d. h. bei kleineren
Phasenzuwächsen), werden ein oder mehr Adressen über mehrere Takte ausgegeben, da die
Phasenzuwächse zu gering sind, um mit jedem Takt die Adresse zu erhöhen. Entsprechend
führen, bei Frequenzen über der „natürlichen" Frequenz, die größeren Phasenzuwächse dazu,
daß einige Adressen übersprungen werden. Dadurch entsteht der Effekt, daß die Signalform aus
Samples besteht; verschiedene Punkte sind Samples sukzessiver Zyklen der Signalform.
Die minimale Anzahl von Punkten, die erforderlich ist um die Signalform genau zu reproduzieren,
bestimmt die maximal mögliche Frequenz.
48
10 Bit
38
/2
= 0,1mHz.
Takt
/1024 (~26,84kHz), der „natürlichen" Frequenz, wird die RAM-
Takt
fmax = f
CLK
/(Anzahl der Punkte)
38
-4
x 10