discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] FEC in gnruadio


From: bob wole
Subject: Re: [Discuss-gnuradio] FEC in gnruadio
Date: Tue, 30 Jun 2015 14:00:33 +0500



On Tue, Jun 16, 2015 at 11:45 PM, bob wole <address@hidden> wrote:


On Tue, Jun 16, 2015 at 11:41 PM, Tom Rondeau <address@hidden> wrote:
On Tue, Jun 16, 2015 at 1:03 PM, bob wole <address@hidden> wrote:


On 16.06.2015 08:26, bob wole wrote:
> Hi,
>
> I just stared working on FEC in gnuradio. I found that there is
> gr-fec.  I want to know that which literature , books/papers, was
> followed during the implementation of the gr-fec so that I can go
> through the c++ implementation more productively and add
> something.
>
>
> -- Bob
>
-

> Hi,
>
> I just stared working on FEC in gnuradio. I found that there is gr-fec.  I
> want to know that which literature , books/papers, was followed during the
> implementation of the gr-fec so that I can go through the c++
> implementation more productively and add something.
>
>
> --
> Bob
>

Hi Bob,

Have a look at the manual. The API itself is quite well described I think:

http://gnuradio.org/doc/doxygen/page_fec.html

It doesn't cover the very recently added TPC and LDPC implementations.
http://gnuradio.org/doc/doxygen/classgr_1_1fec_1_1ldpc__decoder.html
http://gnuradio.org/doc/doxygen/classgr_1_1fec_1_1ldpc__decoder.html
http://gnuradio.org/doc/doxygen/classgr_1_1fec_1_1tpc__encoder.html
http://gnuradio.org/doc/doxygen/classgr_1_1fec_1_1tpc__decoder.html

Those could use work on their documentation.

We're also about to merge in another approach to LDPC encoding and decoding
based on Tracie Perez's GSoC work. You can see the wip branch here:

https://github.com/trondeau/gnuradio/tree/fec/ldpc_methods

And the GSoC presentations:
http://www.trondeau.com/grcon2013-presentations#gsoc-perez
http://www.trondeau.com/grcon2013-presentations#gsoc-manu

Johannes Demel is working on polar codes this summer.

What's your particular interest in FEC? Are you looking to use it or
implement other codes not already in gr-fec? For the FEC API itself, there
is no other reference than the manual page and a presentation from the
original author at our GRCons:

http://www.trondeau.com/grcon14-presentations#tut-mccarthy
http://www.trondeau.com/grcon2013-presentations#tut-mccarthy

Tom

Hi Tom,

Thanks for the links. I am targeting Turbo Codes mainly for short frame size. I found one presentation on turbo codes 


but I could not find its source code in gnuradio. Are Turbo codes implemented in gnuradio? if yes, in which version can I find it? One more question, I am targeting short frame length burst, currently which FEC in gnuradio can give me best gain in this case?

--
Bob

Bob,

Yes, Kiran's TPC work has been integrated as of 3.7.7.1. (I even pointed out the links to the manual pages for the tpc_encoder and tpc_decoder above.)

Tom


Thanks Tom,

I am going to test them soon for my bursty system :) Lets see how it works.

--
Bob 

Hi list,

gnuradio version 3.7.7.1
ubunutu 14.04 32-bit

I am trying to use gr-fec and I am having issues running examples located in gnuradio/gr-fec/examples/


When I run ber_test.grc I get following error

Using Volk machine: avx_32_mmx_orc
Traceback (most recent call last):
  File "/home/gnuradio/gr-fec/examples/ber_test.py", line 267, in <module>
    tb = ber_test()
  File "/home/gnuradio/gr-fec/examples/ber_test.py", line 159, in __init__
    self.fec_extended_encoder_0 = fec.extended_encoder(encoder_obj_list=enc, threading='capillary', puncpat="puncpat")
  File "/usr/local/lib/python2.7/dist-packages/gnuradio/fec/extended_encoder.py", line 64, in __init__
    self.blocks.append(fec.puncture_bb(len(puncpat), read_bitlist(puncpat), 0))
  File "/usr/local/lib/python2.7/dist-packages/gnuradio/fec/bitflip.py", line 47, in read_bitlist
    if int(bitlist[i]) == 1:
ValueError: invalid literal for int() with base 10: 'p'

>>> Done (return code 1)


When I run tpc_ber_curve_gen.grc I get following error

Using Volk machine: avx_32_mmx_orc
Traceback (most recent call last):
  File "/home/gnuradio/gr-fec/examples/tpc_ber_curve_gen.py", line 450, in <module>
    tb.start()
  File "/usr/local/lib/python2.7/dist-packages/gnuradio/gr/top_block.py", line 106, in start
    top_block_start_unlocked(self._impl, max_noutput_items)
  File "/usr/local/lib/python2.7/dist-packages/gnuradio/gr/runtime_swig.py", line 4860, in top_block_start_unlocked
    return _runtime_swig.top_block_start_unlocked(*args, **kwargs)
RuntimeError: boost::thread_resource_error: Resource temporarily unavailable

>>> Done

fecapi_async_decoders.grc runs without any errors.

Any Ideas what could be wrong ?
 
--
Bob

reply via email to

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