Zur Messung der der Bitfehlerrate von Demodulatoren wird hinter dem
Rauschgenerator ein nachfolgender Tiefpaß bzw. Bandpaß geschaltet. Da
der Demodulator ein Sampling System ist, muß der Rauschgenerator
gesmootht werden, damit es nicht zu Aliasingeffekten kommt. Läßt man
sich den RMS-Wert berechnen, sieht man das es auch Probleme gibt wenn
nicht gesmootht wird.
Als Rauschgenerator benutze ich den hier:
* ft: transit frequency
* RMS: output voltage in RMS
.subckt noise_Gauss 1 2 params: ft={277e6} RMS=1 shape=1
B1 1 2
V={shape}*{RMS}*SQRT(-2*LN(1E-5+rand(time*ft)))*SIN(2*PI*rand(time*ft+23
45)) tripdv={0.2*rms} tripdt={1m/Ft}
.ends
Der scheint gut zu sein.
Das zum Hintergrund.
Nun die Frage:
Wie kann man in SPICE bzw. speziell LTspice ein effektives Brick-Wall
Filter erzeugen?
Als ersten Ansatz habe ich mir 6 RC-Tiefpaßfilter kaskadiert. Mit der
üblichen 10:1 Regel für die Kaskadierungswerte. Naja, irgendwie
umständlich. 'Zwischen'-Netze, die zwar simuliert werden aber später
keine Bohne spielen, sind in LTspice auch sehr zeitbehindernd. Das muß
doch eleganter gehen.
Dann kam ich auf die Idee mittels einer BV-Quelle den Frequenzgang
direkt anzugeben und SPICE die Darstellung selbst berechnen zu lassen.
Das scheint aber von irgendwelchen Randbedingungen abzuhängen, wie man
an der fehlerhaften Sim <angehängt> sehen kann. Da gibts plötzlich einen
Peak im Frequenzgang, wo keiner sein darf. Wohlgemerkt, bei der ganzen
Sache geht es um tran-Sims. Irgendeinen Phasengang anzugeben, hat auch
nichts verändert.
Wo ist der Fehler? Muß man irgendwelche Stützpunkte mit ganz bestimmten
Bedingungen hinzufügen?
In den beiden mitinstallierten LTspice Beispielen PLL.asc und PLL2.asc
werden laplace-Darstellungen mit mehr oder weniger undokumentierten
Optionen benutzt, z.B. nFFT=4096. Ist damit was zu machen? In der
Hilfedatei steht, daß die Verwendung von Laplace einen Abfall des
Frequenzganges hin zu höheren Frequenzen bedingt, was beim Beispiel
eines Bandpaß nicht gegeben ist.
Mir ist schon klar, daß ein theoretisches Brick-Wall Filter nicht
realistisch ist. Ich suche eine sinnvolle noch realisierbare Darstellung
eines Filters mit möglichst geringer Noise-Bandbreite und trotzdem hoher
Simulationsgeschwindigkeit. Mit Google kam ich auch nicht weiter.
Irgendwelche Ideen? Danke.
Hm. Anhänge kann man anscheinend nicht einzeln löschen. Nehmt den
zweiten.
> V=V(in) dB
FREQ=(1.48e6,-40,-0)(17.48e6,-5,-45)(18.48e6,-1,-90)(19.48e6,-5,-135)(35
.48e6,-40,-180)
FREQ im Zeitbereich ist eine ganz schlechte Idee.
Nimm ein passives (R,L,C) Besselfilter z. B. 8. Ordnung.
Ich hatte gelesen manches SPICE würde FREQ im Zeitbereich nicht unterstützen und es in LTSpice einfch ausprobiert, da es nicht dokumentiert ist ob es unterstützt wird. Es macht ja auch was, aber anscheinend nicht vollständig richtig. Wenn man die Sim laufen läßt, sieht man den fehlerhaften Peak. Zu deinem Besselfilter-Vorschlag: Ich bin mir unsicher, ob lineare Phase hier überhaupt notwendig ist. Bei einem Rauschgenerator gibt es keine Beziehung zwischen vorher und nachher. Folglich ist die Durchlaufzeit uninteressant. Oder übersehe ich was?
Wenn man in
V={shape}*{RMS}*SQRT(-2*LN(1E-5+rand(time*ft)))*SIN(2*PI*rand(time*ft+23
45)) tripdv={0.2*rms} tripdt={1m/Ft}
rand durch white ersetzt, hat man doch einen Tiefpaß drin. Hm. Werde ich
mal ausprobieren...
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.