Forum: Digitale Signalverarbeitung / DSP / Machine Learning Mittlere Leistung eines FIR Filters


von Daniel R. (zerrome)


Lesenswert?

Hallo zusammen.

Ich stehe gerade irgendwie auf dem Schlauch...

Wie berechne ich die mittlere Leistung eines FIR Filters wenn ich die 
Filterkoeffizienten und alle weiteren Parameter des Filters habe?

Sagen wir mal die Filter Länge ist 60 und oversampling Rate ist 6. Die 
Eingangswerte sind {1,-1}.

Eigentlich müsste man doch jetzt folgendes berechnen, wobei x[n] die 
Filterkoeffizienten sind, Ts die Abtastzeit zwischen zwei diskreten 
Sampeln und N die Anzahl der Koeffizienten:

Was mache ich falsch?

Viele Grüße

Daniel

von A. S. (rava)


Lesenswert?

hi

alles klar, du hast die Formel fuer die Leistung. Fuer x setzt du aber 
nicht die koeffizienten ein, sondern das Signal. In aller Kuerze: du 
mittelst ueber das, was hinten rauskommt.

Ein lineares Filter in dem Sinne hat aber keine "Leistung". Wenn du das 
Eingangssignal vorher verstaerkst, kommt hinten aus dem Filter auch mehr 
raus.

Die maximale Leistung ist ueblicherweise durch die Bauteile oder eine 
Limitierung des Eingangssignals gegeben

von Daniel R. (zerrome)


Lesenswert?

Hm, also der Filter ist ein Root Raised Cosine Filter. Der ist so 
skaliert, das er nach der Faltung mit sich selber im Abtastzeitpunkt den 
Wert 1 bzw. -1 hat. Ich muss aber wissen wie das vor der Faltung mit 
sich selber aussieht... deshalb diese Verrenkung. Ich mein irgendwie 
skaliert man ja so Filter ?!?

von Daniel R. (zerrome)


Lesenswert?

Wer den RRC nicht kennt...

http://www.michael-joost.de/rrcfilter.pdf

Mir hilft das momentan noch nicht so toll...

von Tobias (Gast)


Lesenswert?

Hi,

die Leistung des Ausgangssignals hängt ja nicht nur von der Skalierung 
der Filterkoeffizienten ab, sondern auch vom Spektrum des 
Eingangssignals. Es gilt
wenn S_yy das Leistungsdichtespektrum vom Ausgangssignal ist, S_xx das 
Leistungsdichtespektrum vom Eingangssignal, und G das Filter.

Oft (z.B. wenn man mit Fixed-point-Zahlen zwischen -1 und 1 rechnet), 
interessiert aber auch, was maximal als Ausgangswert herauskommen kann. 
Dazu müsste die Summe über den Betrag der Koeffizienten z.B. kleiner 1 
sein.

Wie du das Root Raised Cosinus Filter normierst, damit nach der Faltung 
mit sich selber im Abtastzeitpunkt Betrag 1 herauskommt, kannst zu z.B. 
im Buch Nachrichtenübertragung von Kammeyer nachlesen.

Gruß, Tobias

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Daniel R. schrieb:
> Wer den RRC nicht kennt...
>
> http://www.michael-joost.de/rrcfilter.pdf
>
> Mir hilft das momentan noch nicht so toll...

Mir auch nicht, denn die Seite ist leer. Hat das jemand? Danke.

von Daniel R. (zerrome)


Lesenswert?

Hallo zusammen.

@ Tobias (Gast)

Ja stimmt, erinnere mich dunkel an Deine Formel...

Aber vom Verständnis her, man benutzt den RRC doch weil der mein 
Eingangssignal bandbegrenzt und zwar nach folgender Formel:


Wobei alpha der roll-off Faktor, R_sym die Symbolrate und B die 
resultierende Bandbreite ist.

Mein Eingangssignal sieht in etwa so aus:

...,1,0,0,0,0,-1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,-1,...

Es ist durch eine Quellencodierung gewährleistet, das die {1,-1} 
gleichverteilt sind.

Um die RRC Koeffizienten zu bestimmen benutze ich einfach eine Lib.:

http://itpp.sourceforge.net/devel/classitpp_1_1Root__Raised__Cosine.html

Die normiert mir den Filter für den Abtastzeitpunkt nach der Faltung mit 
sich selbst auf Betrag 1.

Zu dem PDF von Herrn Joost (Appendix 2)...kann man das so machen?!?

Ich meine -inf bis inf ist ja nicht 2*inf ?!?
Letztendlich kommt der dann auf


Viele Grüße

Daniel

von Tobias (Gast)


Lesenswert?

Hi,

was genau willst du denn jetzt eigentlich wissen?
Zum Integral: Wenn die Funktion symmetrisch ist, kann man die 
Integrationsgrenzen so ersetzen wie oben.

von Daniel R. (zerrome)


Lesenswert?

Hallo,

ich möchte bits RRC filtern.
Dann möchte ich diese verrauschen, mit einem festen SNR. Dazu brauche 
ich die mittlere Leistung von RRC gefilterten bits. Der Rest ist ein 
Kinderspiel :)

von Tobias (Gast)


Lesenswert?

Ach so: Das RRC ist das Pulsform-Filter und du willst für die Simulation 
Rauschen verschiedener Leistung addieren. Das ist in der Tat gar nicht 
so ganz einfach.

Du könntest z.B. einfach das Sendesignal erzeugen und dann die mittlere 
Leistung berechnen (in Matlab) mit P_tx = mean(abs(txSig).^2). Auf die 
Abtastzeit kannst du verzichten, wenn sie während der gesamten 
Simulation konstant ist, weil ja nur die relative Rauschleistung zählt. 
Dann aus dem gewünschten SNR die gewünschte Rauschleistung berechnen. 
Dann ein Rauschsignal erzeugen und dieses so skalieren, dass es die 
gewünschte Rauschleistung hat.

Falls du ein bestimmtes E_s / N_0 erreichen willst, müsstest du zuerst 
E_s berechnen (entweder aus der Impulsantwort des Pulsform-Filters oder 
aus der Signalenergie und der Zahl der gesendeten Symbole). Dann N_0 aus 
dem gewünschten E_s / N_0 -Wert. Und dann daraus die Varianz (Leistung) 
des zeitdiskreten Rauschens. Wie das geht, steht glaube ich im Anhang 
vom Kammeyer-Buch.

Gruß, Tobias

von Daniel R. (zerrome)


Lesenswert?

sitze zufällig vor dem Rechner^^
"Kammeyer-Buch" hab ich erst morgen wieder...

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
Noch kein Account? Hier anmelden.