discuss-gnuradio
[Top][All Lists]
Advanced

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

[Discuss-gnuradio] SOCIS project update 7


From: Johannes Demel
Subject: [Discuss-gnuradio] SOCIS project update 7
Date: Fri, 17 Jul 2015 18:34:26 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

Hey GNU Radio'ers!

another week has passed. So it's time for a project update.
This week was dedicated to channel construction. Finally, all channel
construction algorithms work. I added a couple of convenience
functions too.
First, there's a command line tool 'polar_channel_construction' which
will do channel construction according to the parameters you'll pass
to it.
Secondly, there's a GRC block which takes all the parameters and
returns a dictionary with the desired parameters. Most importantly,
<variable_name>['positions'] and <variable_name>['values'] contain the
Numpy arrays of interest. I hope they're self-explanatory.
For all channels but BEC, channel construction is quite a
computationally heavy task. Thus, Z-parameters which are generated
once for a user are saved in '~/.gnuradio/polar'. Afterwards they are
available. If a new set of parameters is encountered, the
corresponding z-parameters will be calculated automatically. There's a
progress bar and everything. So you can keep track of construction
progress.
Z-parameters are saved in text files. A header holds all the info on
construction parameters and.
I worked on further integrating polar codes into FECAPI. So, now you
can just open an example flowgraph and another flowgraph generates BER
curves for SC decoder and SC list decoder and for comparability a
convolutional code.
One odd thing about FECAPI, that I noticed, is bit-to-symbol mapping.
As far as I've seen it so far, most applications map 1 -> -1 and 0 ->
1, or 2 * bit - 1. FECAPI handles this the other way round. At least
'BER curve generator' behaves this way, so I assume that the other
decoder blocks expect the same mapping.

That's it for the week. So far, I've dealt with all aspects of polar
codes. Now it's time to focus on VOLK optimization and algorithmic
optimization.

A little goodie at the end [3]. I uploaded a BER comparison pic to
imgur. Be careful with absolute values though. I doubt Es/N0 is
accurate. But it gives you an impression.

More info and current project progress can be found in [1] and [2].

Cheers
Johannes

[1] https://github.com/jdemel/gnuradio
[2] https://github.com/jdemel/socis-proposal
[3] http://i.imgur.com/QXWdSPj.jpg



reply via email to

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