Ali,

I think the example uses the generic_mod block
<https://github.com/gnuradio/gnuradio/blob/main/gr-digital/python/digital/generic_mod_demod.py>
inside. This block uses the polyphase arb resampler for antialiasing. The
line that computes the rrc delay is here
<https://github.com/gnuradio/gnuradio/blob/0becf06a397edc1b2dcf440785e40b73f76433ad/gr-digital/python/digital/generic_mod_demod.py#L146>.
Briefly, for your example with sps = 2, it's (11 x 2 x 2 - 2) / 2 = 21. For
sps = 4, (11 x 4 x 4 - 4) / 2 = 86. I don't know if this helps.

Jared.

On Tue, Jan 10, 2023 at 6:08 PM Cinaed Simson <cinaed.sim...@gmail.com>
wrote:

> Hi Ali - your flowchart has no device and no throttle. You need to add a
> throttle.
>
> And I don't the expertise or the time to look at the source code.
>
> So I'm punting back to the list.
>
> -- Cinaed
>
>
> On 1/10/23 03:10, Ali G. Dezfuli wrote:
> > Hi everybody,expertise
> >
> > I just want to know how the delay of the "Constellation Modulator"
> > block in GRC is calculated.
> > In fact, whether you set the block's last parameter "truncate filter
> > transient" or not, a delay of 86 samples could be generated, no matter
> > how many points are in the constellation.
> >
> > This magic number (i.e. 86) also appears in
> > "linear_equalizer_compare.grc" example (in
> > gr-digital/examples/equalizers in modulated_sync_word variable).
> >
> > I know this delay depends on the "samples per symbol" (sps) parameter
> > and comes from the built-in pulse shaping with its default taps equal:
> >        firdes.root_raised_cosine(32, 32, 1.0, exess_bw, 32*11*sps)
> > and with the following sps to delay relation:
> > (sps=2, delay=21)
> > (sps=4, delay=86)
> > (sps=8, delay=348)
> > etc.
> >
> > my GR version is:   v3.11.0.0git-316-gc11667ef
> > thank you all!
>
>
>

Reply via email to