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.
:
Bearbeitet durch User
> 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.