[Top][All Lists]

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

Re: taps for a Raised Cosine function

From: Kristoff
Subject: Re: taps for a Raised Cosine function
Date: Tue, 10 Aug 2021 23:25:08 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

Hallo Gary,

OK, I based my assumption on the graph of the RC on wikipedia  (*)

Perhaps I got it wrong and is the frequency-response indeed a RRC, not a RC.
If yes, this would make things a lot easier.

(Perhaps I got confused by the fact that amateur-radio PSK31 uses RC instead of RRC, so perhaps there is a reason this was also the case here)

On what do you base the excess BW value of 0.35?

Is it based on the math of the specification, or experimentation?

I'll try the values you propose and -just for the fun- also try some other values. One of the advantages of manchester-encoding is errors are a pretty to detect and to count, so that should provide a basis to measure the BER :-)

(*) https://en.wikipedia.org/wiki/Raised-cosine_filter#/media/File:Raised-cosine_filter.svg


On 10.08.21 22:36, Gary Schafer wrote:

That pulse shaping is *identical* to that for a RDS signal. I'm able to demodulate the RBDS signal using a RRC filter in a "Polyphase Clock Sync" block. Adjusting the parameters from the RDS signal to that of your BBC signal (1187.5 Hz bit rate to 25 Hz bit rate), you'd get the following parameters for the various blocks:

Polyphase Clock Sync:
Samples/symbol: 50
Loop bandwidth: 2*pi/100
Taps: rrc_taps_rx
Filter size: 50
Initial phase: 1
Maximum rate deviation: 1.5
Output SPS: 1

RRC Filter Taps:
Id: rrc_taps_rx
Gain: 1
Sample rate: 1250
Symbol rate: 25
Excess BW: 0.35
Num Taps: 550

At the very least, if my hypothesis is correct, that *should* get you a constellation that is roughly a donut (as opposed to a big ball of dots).

Hope this helps.



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:

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.

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.


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,


reply via email to

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