On Sat, Feb 26, 2011 at 8:00 AM, Antoine Dedave <
qlmqny_anti_r...@hotmail.com> wrote:

>  Hi,
>
> I'm implementing a 2-FSK modulator (I Know that a good one already exists
> but
> i have to do it myself for academic purpose).
>
> To do so, i produce a given (N) number of samples corresponding to the
> sampling of a complex exponnetial for each
>  incoming bits.
>
> The "sampling rate" (one bit => N samples) is increased  by N through the
> modulator, so i'm doing this
>
> Constructor:
>
>   set_relative_rate(N);
>   set_output_multiple(N);
>
> General_work:
>
>   consume_each(noutput_items/N);
>
> Is that correct? and is there anything else to do?
>
> Thanks in advance,
>
> Antoine Dedave
>

First, what type of gr_block are you inheriting from? The fact that you are
using noutput_items/N in your consume_each function makes it look almost
like you are using a gr_sync_block, which would not be the right answer
here.

In fact, you can use a gr_sync_interpolator since you know the direct
relationship between input and output samples (1-to-N). Set the
interpolation rate as N and you don't need to worry about any of the reset
(setting the relative_rate or consume_each; the parent class knows what to
do with them).

Look at the implementation of gr_sync_interpolator to see how it handles
setting everything up for you to do the interpolation properly.

Tom
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to