discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] sync_interpolator


From: Martin Braun (CEL)
Subject: Re: [Discuss-gnuradio] sync_interpolator
Date: Tue, 27 Aug 2013 09:19:56 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

On Tue, Aug 27, 2013 at 12:11:48AM -0500, Miklos Maroti wrote:
> Hi Guys,
> 
> I do not understand how set_history and fixed rate blocks are
> interacting. Supposedly, the scheduler can figure out a static
> schedule for sync blocks. However, the sync_interpolator is forcasting
> this
> 
> int sync_interpolator::fixed_rate_noutput_to_ninput(int noutput_items) {
>     return noutput_items / interpolation() + history() - 1;
> }
> 
> but consumes only noutput_items / interpolation(). This means, that
> the scheduler is making a schedule based on the wrong info, the block
> is actually consuming LESS than it has predicted, so how can the
> scheduler make optimal schedule?

Hi Miklos,

Think of the history as the number of *past* input samples it takes
to produce one output sample. The classic example is an FIR filter,
where you need as many samples as you have taps.
Minimum is of course 1 (which means you need only the current sample).
This is also the default value.

In a sync_interpolator, noutput_items is always an integer multiple of
ninput_items. So if you have no history configured, it must consume
noutput_items / interpolation(). So what you're seeing is correct
(unless you changed your history).

> On this point, it is not clear how history() is handled. I searched
> the archives, and the wisdom is, that set_history(2) means, that all

I'm sure the topic of history() is covered in the tutorials. Also, what
you're saying is correct and fits what I just explained above.

MB

> the ninput_items and noutput_items and their relationship is
> completely unchanged, but we have an extra sample at the beginning of
> the input buffer. However, the sync_interpolator does not do this, it
> actually includes the history amount in the requested input. So does
> the scheduler takes history amounts into account, and the
> sync_interpolator has a bug, or every block has to add the history
> into their forecast?
> 
> This is really confusing. I hope someone can shed some light on this.
> 
> Best,
> Miklos
> 
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

-- 
Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin Braun
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071
www.cel.kit.edu

KIT -- University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association

Attachment: pgpgtd774W2ib.pgp
Description: PGP signature


reply via email to

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