Hi Martin,
Thanks for the reply. I would like to just clarify two
questions I have from your comment.
1. In gnuradio packet structure , what is difference between frame and
packet? I see that packet consists of preamble,header,payload and crc
fields. But what does a frame mean. Is it the entire data that is sent
from the transmitter which is then broken into packets or is it
something else.
On Wed, Jun 11, 2014 at 7:07 PM, Martin Braun <address@hidden
<mailto:address@hidden>> wrote:
On 11.06.2014 14:43, Karan Talasila wrote:
Hi
Looking at the ofdm receiver at ofdm_rx grc, I see that schmidl
and cox
synchronisation algorithm uses sync1 and sync2 which are two ofdm
training symbols that help in frequency offset correction and also
timing estimate to detect the start of the packet.
Then there is channel estimator block in grc that again uses
preamble
ofdm symbol to detect coarse frequency offset. In the entire
implementation I haven't seen the use of pilot symbols in each ofdm
symbol for either channel estimation or synchronisation. So does
that
mean that if you are using a packet structure with a preamble
there is
no need of pilots for any receiver processing.
I get this doubt because benchmark_rx.py which uses ofdm gives you a
terminal option saying occupied tones which can be set by user at
terminal. So if you can set or increase occupied tones to any number
less than fft length, then that means you can be flexible with
increasing or decreasing pilot symbols to a value that you want.
Am I right?
Yes, you can use zero pilot carriers. They are used in the
ofdm_frame_equalizer_vcvc, but our current implementations aren't
very good. For longer frames, I recommend using pilot symbols
(distributed in time, not frequency!), but for short packets, the
initial estimation is sometimes enough, if your setup is two USRPs
close to each other and you have something like 10 OFDM symbols total.
M
--
Regards
Karan Talasila