discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: taps for a Raised Cosine function


From: Fabian Schwartau
Subject: Re: taps for a Raised Cosine function
Date: Wed, 11 Aug 2021 00:07:29 +0200
User-agent: K-9 Mail for Android

Seems fine, should work :)

Am 10. August 2021 22:44:44 MESZ schrieb Kristoff <kristoff@skypro.be>:
Hi Fabian,

Thanks, i'll try both options and compair them.


I remember from my books on DSP it is possible to combine multiple
consecutive FIT filters into one, so I did a little bit of more research
on this.


I found (*) that -as convolution as associative- this implies this:

(( f * h1) * h2) = f * (h1 * h2)



So I guess I just use firdes.root_raised_cosine to calculate the RRC and
then "numpy.convolute()" it with itself, I should get the RC.

Feel free to correct me if I am wrong. :-)



(*)
https://dsp.stackexchange.com/questions/20194/concept-of-combining-multiple-fir-filters-into-1-fir-filter


Kristoff



On 10.08.21 21:01, Fabian Schwartau wrote:
Hi Kristoff,
You can just put an additional RRC in front of it or you can calculate
the tabs by folding die tabs of the RRC with themself. There is
probably a numpy function to do that. Have not tested any of that, but
both ways should do the trick.

Fabian

Am 10. August 2021 20:44:05 MESZ schrieb Kristoff <kristoff@skypro.be>:

Hi all,


I am playing around with PSK demodulation, now doing a small project
trying to decode the slow-speed PSK data on the 198 KHz carrier of BBC
radio 4.

The specs are here:
http://downloads.bbc.co.uk/rd/pubs/reports/1984-19.pdf <http://downloads.bbc.co.uk/rd/pubs/reports/1984-19.pdf>

According the document (page 2 of the document, page 8 of the PDF), the
system uses a shaping-filter of cos(pi * f * Td / 4).
(with Td = 50)

If I am correct, this is in fact a raised-cosine filter with beta = 1.
https://en.wikipedia.org/wiki/Raised-cosine_filter <https://en.wikipedia.org/wiki/Raised-cosine_filter>

So the document seems to specify a raised-cosine filter, both on the
transmit and receive side; so not a ROOT raised-cosine as is used in
most PSK systems.

Question:|
How do I create the filter-taps for the Polyphase clock sync block for a
raised-cosine filter?

I found a function firdes.root_raised_cosine, but no firdes.raised_cosine?

Is there a way to easily convert the taps of a RRC filter to those of a
RC filter? (RC = RRC^2, so square the value of all taps?)



Any other ideas?
- put an additional RRC low-pass filter in front of the Polyphase
clock-sync block?
- use firdes.pm_remez() ?



Thanks in advance,


Kr.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]