discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Questions


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] Questions
Date: Tue, 3 Jul 2012 17:12:11 -0400

On Wed, Jun 27, 2012 at 3:36 PM, Amr Youssef
<address@hidden> wrote:
> Hi all , i have some questions  :
>
> In OFDM Modulator Block , in Mapper Sub-block , in path of :
> ./lib/digital_ofdm_mapper_bcv.cc
>
>  1- I saw the following comment inside the code :  " Eventually, we will get
> rid of the occupied_carriers concept. " , the question how you get rid of
> the occupied carriers concept in the code and why ? . as i see the code
> depends strongly on this concept .

That most likely referred to using some kind of a carrier map to
specify which carriers are used, which unused, and which are pilots.
The occupied_carriers is just a number that says all of these carriers
in the middle are used for data. Not very flexible.

> 2- Why the concept of occupied carriers is used  and why filling only part
> of FFT size not all of it  ?

This is very common in OFDM. The side carriers are unused to allow for
roll-off in the channel filters and because OFDM's sinc signals in
frequency have a slow rolloff in power in the adjacent channels.
Blocking off the edges makes sure the energy outside of the channel is
lower.

> 3-Inside the code ,  string carriers = "FE7F" .  I have two questions here ,
> the first is ,  when converting to bits : 1111111001111111 , why there is
> two zeros at DC instead of one zero only ?
> The second question is , you started with "FE7F" .  Why  didn't  you start
> with "E7"  and then pad F's from both sides  (looping) as  you did later !?

The two zeros are used to make sure that there is nothing depending on
the center carriers. With just the middle one (and which one is the
middle one?), the DC offset was still too much. Also, with DC offset
correction filters, there's a bit of a bandwidth to it. Cutting out
the center 2 was the only way to handle these problems.

The F's are used to be more clear with what's going on. Also, makes it
easier to change in the future.

> 4- Also , for the following segment of the code : diff =
> (d_occupied_carriers - 4*carriers.length())  .  Why you are multiplying by
> four instead of eight when converting from Character Domain to Bit Domain ?
> or you deal with them as HEX only ?

I really don't remember.


> 4- How many OFDM Symbols exist in one packet ?

Depends on the how many bits can fit into a symbol and how long the packet is.

> 5- What is the maximum packet size ?

I think it's capped at 1500 bytes. But because we only do freq, phase,
and timing correction with the preamble, you'll lose sync if your
packets are too long. We don't have any tracking algorithms
implemented to keep track of changes there.


> 6- What is the difference between coming message and the packet . Are they
> the same thing ?  or Does one message contain more than one packet ?
>
> Thanks in-advance
> Amr ,

The message can contain more than 1 packet, yes.

Tom



reply via email to

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