Guten Abend eine kleine Frage zum Aufbau: Ein Arbitrary Waveform Generator ist doch vereinfacht nichts anderes als n-Samples die zyklisch durch einen DAC in ein Analogsignal gewandelt werden. Dabei filtert ein TP-Filter am Ausgang alles oberhalb der halben Taktfrequenz heraus. Wie wird das in den käuflich erhältlichen AWGs, dort kann ja die Taktfrequenz variiert werden. Passt sich der Antialiasingfilter an oder werden die Sampledaten auf eine feste Taktfrequenz hochgerechnet?
Von einem AF Filter redet man bei der Abtastung von Eingangssignalen, also bei einem ADC. Bei der PWM am Ausgang nennt sich das Rekonstruktionsfilter und ist in der Regel ein einfacher Tiefpass. Der wird auch nicht auf die halbe Signalfrequenz berechnet sondern so, dass bei der PWM-Schaltfrequenz eine gewisse Dämpfung erreicht wird (gute 40dB strebt man da vermutlich an). Ergo muss sich der TP nicht anpassen, der ist nämlich von der PWM-Frequenz abhängig. Allerdings moduliert das "arbitrary signal" natürlich in die PWM mit rein, was dazu führt dass gewisse Signale stärker vom TP gedämpft werden als andere. Also müssen Signalfrequenz, TP Grenzfrequenz und PWM Frequenz jeweils ein gutes Stück auseinanderliegen.
@ Sascha (Gast) >Bei der PWM am Ausgang nennt sich das Rekonstruktionsfilter und ist in >der Regel ein einfacher Tiefpass. Nö. Gerade im Audiobereich sind dort Filter höherer Ordung Gang und Gäbe! >Ergo muss sich der TP nicht anpassen, der ist nämlich von der >PWM-Frequenz abhängig. Wer redet denn von PWM? Der OP redet von einem Arbitrary Waveform Generator, dort werden die Samples selten bis nie mit PWM ausgegeben sondern mit einem echten DAC. Die Frage lautet, ob der Generator IMMER mit maximaler Samplingrate die Daten ausgibt und demzufolge einen festen Ausgangsfilter hat oder ob sich die Ausgabefrequenz der Samples anpasst, wodurch dann auch der Filter angepasst werden muss. Ich tippe auf 1., wenn gleich ich es nicht beschwören würde.
Na, meinetwegen Rekonstruktionsfilter. Aber keine PWM, sondern Wavetable->DAC. Ich glaube nicht, dass käuflich erhältliche AWGs die Signale über eine PWM synthetisieren. Bei 100MSamples/s und aufwärts müsste eine 16bit PWM ziemlich schnell rennen. Also, wie machen das kommerzielle AWGs? Filterfrequenz variabel? Oder Filterfrequenz fest und es erfolgt ein Oversampling mit nem digitalen Zwischenfilter?
> vereinfacht nichts anderes als n-Samples die zyklisch durch einen DAC
Etwas zu stark vereinfacht. Die benutzen den DDS-Algorithmus, damit man
für jede Frequenz den selben Takt und die selben Antialiasfilter
benutzen kann.
Wie kann ich mir das Filter vorstellen? Gibt es ein verständliches Modell aus der Analogwelt, z.B. ein Tiefpass variabler Frequenz dessen Ausgangssignal mit der festen Frequenz abgetastet wird? Ich finde zwar einige Links zu Interpolationsfiltern, aber so gut ist mein Verständnis von digitaler Signalverarbeitung noch nicht um das zu verstehen :( Ist das ein digitaler Tiefpass mit fg-Koeffizienten=halbe Samplefrequenz welcher die Daten aber mit der Samplefrequenz des Ausgangs bekommt?
Noch einer schrieb: > Etwas zu stark vereinfacht. Die benutzen den DDS-Algorithmus, damit man > für jede Frequenz den selben Takt und die selben Antialiasfilter > benutzen kann. Den DDS-Algorithmus kann ich doch bei x-beliebigen Wellenformen nicht nehmen? Oder ist das auch bei x-beliebigen Wellenformen möglich, aber dann muss die Frequenz des wiedergegebenen Signals um Größenordnungen kleiner sein als die Samplefrequenz, quasi wie Random-Sampling beim Oszi?
@ Torben Kuhn (Gast) >Den DDS-Algorithmus kann ich doch bei x-beliebigen Wellenformen nicht >nehmen? Doch. Man muss nur die Sinustabelle durch die beliebige Wellenform ersetzen. >Oder ist das auch bei x-beliebigen Wellenformen möglich, aber >dann muss die Frequenz des wiedergegebenen Signals um Größenordnungen >kleiner sein als die Samplefrequenz, Sicher. Das gilt aber immer. > quasi wie Random-Sampling beim Oszi? Nicht ganz.
Falk B. schrieb: >>Den DDS-Algorithmus kann ich doch bei x-beliebigen Wellenformen nicht >>nehmen? > Doch. Man muss nur die Sinustabelle durch die beliebige Wellenform > ersetzen. Hm, ich glaub da stehe ich noch auf dem Schlauch für den Fall, dass der Akkumulatorinkrement größer als 1 Sample aus der Tabelle ist. Bei einem Sinus kann ich das noch verstehen, da reichen wenige Stützstellen. Aber schon bei einem Dreiecksignal benötige ich doch jede Menge Stützstellen damit das auch ein Dreieck bleibt, d.h. Akkumulatorinkrement < 1 Sample. Wie ist es bei dem DDS Prinzip mit dem Oversamplingfilter? In den Datenblättern zu div. DDS-Chips sehe ich keinen Oversamplingfilter vor dem DAC.
Torben Kuhn schrieb: > Ein Arbitrary Waveform Generator ist doch vereinfacht > nichts anderes als n-Samples die zyklisch durch einen > DAC in ein Analogsignal gewandelt werden. Doch, es ist etwas anderes. Du gehst offenbar davon aus, dass eine konstante Anzahl von n Samples mit variabler Geschwindigkeit ausgegeben wird. Dem ist aber nicht so. Es wird eine variable Anzahl Samples mit konstanter Geschwindigkeit ausgegeben. Je Sampling-Taktintervall geht der Phasenakku also um 3.14 Samples oder um 0.0775 Samples o.ä. weiter. Das läuft praktisch darauf hinaus, entweder Samples mehrfach auszugeben oder welche zu überspringen. Und - ja, dabei entstehen nichtharmonische Störungen (Nebenwellen). > Dabei filtert ein TP-Filter am Ausgang alles oberhalb der > halben Taktfrequenz heraus. Richtig. > Wie wird das in den käuflich erhältlichen AWGs, dort kann > ja die Taktfrequenz variiert werden. Ist das tatsächlich so? Das wäre mir neu. > Passt sich der Antialiasingfilter an oder werden die > Sampledaten auf eine feste Taktfrequenz hochgerechnet? Weder - noch.
Possetitjel schrieb: > Je Sampling-Taktintervall geht der Phasenakku also um > 3.14 Samples oder um 0.0775 Samples o.ä. weiter. Der Satz ist sprachlich missraten. Neuer Versuch: "Je nach gewünschter Ausgangsfrequenz geht der Phasenakku je Taktintervall immer um z.B. 3.14 Samples (das gibt eine relativ hohe Frequenz) oder um 0.0775 Samples (das gibt eine relativ niedrige Frequenz) oder um beliebige andere Werte weiter."
Possetitjel schrieb: > "Je nach gewünschter Ausgangsfrequenz geht der Phasenakku je > Taktintervall immer um z.B. 3.14 Samples (das gibt eine relativ hohe > Frequenz) oder um 0.0775 Samples (das gibt eine relativ niedrige > Frequenz) oder um beliebige andere Werte weiter." So war das mal vor 20 Jahren. Aktuell wird entweder Resynthese für die gewünschte Frequenz betrieben, oder komplexe Sampleinterpolation für die nicht vorhandenen zwischenwerte, um das Aliasing (sic!) dramatisch zu reduzieren. Dazu gibt es Tonnen an Material und wenn man das nicht richtig verstanden hat, kommt doch recht erbärmliches Gekrächtze aus einem eigenen Gerät.
Wenn ich das nun so alles auf mich wirken lasse, habe ich den Eindruck, dass es, bezogen auf das Ausgangssignal, keinen großenUnterschied macht ob die Sampletable mit einem geringeren Takt durch den DAC ausgegeben wird oder ob per DDS-Prinzip ein und derselbe Wert aus der Sampletable entsprechend häufiger ausgegeben wird. Vom Rauschen durch durch die endliche Größe des Akkumulators mal abgesehen. 256 Byte Table (8 Bit) mit f1 wiedergegeben entspricht 256 Byte Table (8 Bit) mit 256*f1 wiedergegeben und einem 16 Bit Akkumulator, dessen oberste 8 Bit zur Adressierung verwendet werden, richtig?
Torben Kuhn schrieb: > Wenn ich das nun so alles auf mich wirken lasse, habe ich > den Eindruck, dass es, bezogen auf das Ausgangssignal, > keinen großenUnterschied macht ob die Sampletable mit > einem geringeren Takt durch den DAC ausgegeben wird oder > ob per DDS-Prinzip ein und derselbe Wert aus der Sampletable > entsprechend häufiger ausgegeben wird. Theoretisch und mit Blick auf das Ausgangssignal ist das richtig. Man hätte bei einem festen Increment von 1.0 und variablem Takt sogar noch den Vorteil eines deutlich saubereren Spektrums, da keine nicht-harmonischen Nebenwellen, sondern ausschließlich harmonische (Ober-)Wellen erzeugt werden. Trotzdem bevorzugt man aus praktischen Gründen das DDS-Prinzip mit konstanten Takt und variablem Increment, und zwar weil: 1. Man will keinen variablen Takt haben, weil VCOs i.d.R. aufwändiger als Quarzoszillatoren sind und schlechtere Eigenschaften haben (Frequenzstabilität, Rauschen). 2. Man will keinen variablen Takt haben, weil man dann ein nachgeführtes Filter braucht, was sich beschissen bis gar nicht realisieren lässt.
Possetitjel schrieb: > 2. Man will keinen variablen Takt haben, weil man dann > ein nachgeführtes Filter braucht, was sich beschissen > bis gar nicht realisieren lässt. Das funktioniert aber wohl nur, wenn ich mit irgendwelchen Maßnahmen dafür sorge, dass das Signal auch tatsächlich mit einer resultierenden hohen Frequenz synthetisiert wird. Ohne diese Maßnahmen müsste sich, wenn ich nun alles richtig verstanden habe, die Taktfrequenz im Spektrum bei Verringerung des Phaseninkrements in niedriger werden. Wenn ich eine Sinustabelle ausgebe, und aufgrund des Phaseninkrements jeden Wert doppelt hintereinander ausgebe ist das ja dasselbe wie wenn ich die Taktfrequenz halbiere. Wobei ich in den Datenblättern zum AD9834 und AD9851 (mit denen spiele ich z.Zt.) nichts hierzu finde
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.