In ofdm transmitter , I want to add 6 subcarriers as a guard band
between
symbols , so that each symbol is fft + cp + guard band … How to add
this
guard band ? is there a block which add zeros ?
I think I can make guard band included in CP , I can make cp longer by 6
then multiplying symbols by a window (multipling fft and actual cp by
ones
& multipling last 6 subcarriers by zeros ) . Is there a window or time
domain filter in GNU Radio ?
Thanks.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Sara,
it seems like there is some confusion between time and frequency domain.
In an OFDM system you have subcarriers next to each other in the
frequency domain. You will most likely add new subcarriers by putting
non-zero values on your vector in the frequency domain. In order to
realize a guard band you just put zeros on this vector in the
frequency domain.
The cyclic prefix, CP, is a guard time. It is a time domain concept.
It provides protection between each OFDM symbol.
I hope this cleared things up a little
happy hacking
Johannes
On 22.05.2014 11:29, Sara Chérif wrote:
In ofdm transmitter , I want to add 6 subcarriers as a guard band
between symbols , so that each symbol is fft + cp + guard band …
How to add this guard band ? is there a block which add zeros ? I
think I can make guard band included in CP , I can make cp longer
by 6 then multiplying symbols by a window (multipling fft and
actual cp by ones & multipling last 6 subcarriers by zeros ) . Is
there a window or time domain filter in GNU Radio ? Thanks.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQIcBAEBAgAGBQJTfdjTAAoJEO7fmkDsqywM0SMP/0x4nHy1MBHi82EvA/UXH1it
rGkNUUuXLUbdpY843KVcOeoR91mwjMCHywGiyD+3Zk3XI0gSqKrxpxXYTJxf1/ON
G6J2ATe8fMk206mczemk5LgLTx8WnML4LLSECvf1oA5UkYAkdUoxy2e7CvhkNQBR
FGShvMkxFi4BFWYNKopMICkHxeUD5uOpi/Y59uQ+h/xT8FAZoLh8ZnYMKh4OhJtN
IDiS0QCYKpZEp9Y2M7h/YbFKynwcXAxV5fouKbzWzlysGULEuxa57R+Nt7s5+Ylh
pY6kwHx0RZaoEBEB1Ak4jx97Qfawx/xVb4xbpgYH6ipqKwn8EXstS+0lh1A70rak
AyYEAoqRizKO5AfSv3yXXs3GaA7PVi6NjsZ7kqSTimOOZ+O1FMIyQ7eKQGOChw4c
2H2UlHCp3XH/LfVLfRUXVh9PumcyajWGwpZnd4O51Sk9UfboPNWC7PH1j6BY+cfX
9l3JEu9oY9Wy381z53nAgIOBdG/xMj6zzHXoPSUNNzsQnwZdxDQ5GLhmpRfX5WCe
gk2axSMSCvUedmKjvvqtvL7aaZC5qHkNgvjyxVbPHLPfzIoPDqO7AEv/7noqrSM8
wYg3ikAFvvVXLxXuezeNkt/Cy0YMZ2mqijZmWtlY5CSUW0gDmLqwfHvkWQH3A1aM
ArQzOreAmtzPr0ICl/Le
=RCub
-----END PGP SIGNATURE-----
On 05/22/2014 11:29 AM, Sara C. wrote:
In ofdm transmitter , I want to add 6 subcarriers as a guard band
between symbols , so that each symbol is fft + cp + guard band … How to
add this guard band ? is there a block which add zeros ?
I think I can make guard band included in CP , I can make cp longer by 6
then multiplying symbols by a window (multipling fft and actual cp by
ones & multipling last 6 subcarriers by zeros ) . Is there a window or
time domain filter in GNU Radio ?
See http://gnuradio.org/doc/doxygen/page_ofdm.html, you can simply use
those subcarriers you want. The default settings (see e.g. the OFDM
examples) all have empty sub-carriers for this reason.
M
Thanks Martin & Johannes .
I send & receive real time voice packets coming from soft phone using 2
USRPs over GSM RF channel:
If there is a call established between the 2 end users but they are not
speaking , then no new packets to send ?
If there is no new packets coming , I want to send zeros instead of
repeating the sent packets , How Can I do this ?
Thanks in advance.
2014-05-22 17:03 GMT+03:00 Martin B. [email protected]:
Sara,
If there is a call established between the 2 end users but they are
not speaking , then no new packets to send ?
This is not a question for the GNU Radio mailing list, since this is a
characteristic of the soft phone, obviously.
If there is no new packets coming , I want to send zeros instead of
repeating the sent packets , How Can I do this ?
How and why would you repeat packets? There’s no mechanism for that that
I would know of.
Ok, so to make this as short as possible, here’s my deduction on your
question:
-
you don’t know the “real world” rate at which packets are generated by
your soft phone. If you knew, you wouldn’t be asking, because then you
would just be padding them to match the over-the-air bit rate [0]. -
knowing when to wait for a packet or when to zero-pad would require
knowing how much voice duration was carried in one packet AND how much
real-world time has passed. Knowing that requires knowing what kind of
information these packets carry. My first mail regarding how to deal
with RTP packets applies. -
you want to transfer packeted data, but you want to construct a
continuously streaming transmitter; while this is possible[1], it’s
certainly not really easy to implement cleanly in GNU Radio and not very
intuitive, either. I’d recommend going for bursted transmission using
the start-of-burst tag functionality.
Greetings,
Marcus
[0] … which would be, information-theoretically, a bad thing to do, if
the amount of padding was significant: compressing speech (ie. removing
redundancy) and transmitting that at a higher bitrate just to add zeros
to match the original bit rate is really just reducing your energy per
bit. You’ll probably get a better transmission if you were to reduce
your transmission symbol rate to match your soundcard’s sample rate and
transmit uncompressed audio, and you would be avoiding all the hassle
you’re experiencing now.
[1] This is usually done when re-synching is expensive. A typical
example for these kind of transceivers are wireless optical networks,
where the medium is often occupied by a rectangle signal, unless there
is a packet on there, which has a preamble. Using GNU Radio, detection
of preambled packets has gotten easier, compare the modern gr-digital
examples, and clock recovery is, if needed, possible, so there usually
is no need to continuously occupy your carrier with zeros.