How to implement polar codes (both encoding and decoding) in matlab?

I am doing my post graduation project on polar codes. I have to implement the polar coding scheme in matlab for wireless communication. But actually I could not find any commands in matlab for the polar codes. Hence I have to design an encoding and decoding algorithm. The decoding algorithm is based on successive cancellation algorithm. So, if it is possible please help me out for designing encoding and decoding algorithm for polar codes in matlab.

 Respuesta aceptada

Harish V
Harish V el 3 de Feb. de 2015
Editada: Harish V el 25 de Mzo. de 2016

PS: For a complete MATLAB package that can help you to immediately start working with polar codes, visit our recent site: www.polarcodes.com

===============================================================

There are actually three components that you need to implement polar codes.

1. Construction Algorithm

2. Encoder Algorithm

3. Decoder Algorithm

Check this paper for a full implementation of the decoder & construction algorithms:

http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6979881

OR

http://www.tinyurl.com/permutedpolar

Just set no-permutation or permutation specification vector $\underline{pi}$ = [n-1,n-2,...,0]

And the remaining encoder is an interesting puzzle left to you.

Hints:

1. The basic loops for encoder are same as that of a construction algorithm. Except that you need to first prepare an N-bit vector "d" which embeds K-bit message vector "u" in it, using the frozenbit locations.

2. Use "d" as input to the same three-loop algorithm

3. Replace (z^2-2z, z^2) operations with (x1+x2, x2) where '+' is bit-XOR. And the result is the encoded vector "x" = F^n "d"

PS: I have recently released a full MATLAB code-base using a logic much more efficient and improved upon the above paper. It is openly available here: http://www.ecse.monash.edu.au/staff/eviterbo/polarcodes.html

Simply put, the zip file provided there contains all basic components required for polar coding such as: 1. Construction 2. Encoding 3. Successive cancellation decoding

In fact, as a bonus, it even includes advanced (most efficient known) modules required for "systematic polar codes" as described in: http://dx.doi.org/10.1109/LCOMM.2015.2497220

5 comentarios

Harish V
Harish V el 6 de Dic. de 2015
Editada: Harish V el 6 de Dic. de 2015
I have recently released a full MATLAB code-base using a logic much more efficient and improved upon the above paper. It is openly available here: http://www.ecse.monash.edu.au/staff/eviterbo/polarcodes.html
Simply put, the zip file provided there contains all basic components required for polar coding such as: 1. Construction 2. Encoding 3. Successive cancellation decoding
In fact, as a bonus, it even includes advanced (most efficient known) modules required for "systematic polar codes" as described in: http://dx.doi.org/10.1109/LCOMM.2015.2497220
Hi, Harish, recently I have been studying polar codes, however, I am new to matlab, could you please help in the solution in SCL decoding algorithm for non-systematic and systematic polar codes both in MATLAB? Thanks! Best regards!
Bruce Yee: Harish will probably not be notified of your message. If you click on the link at monash.edu.au then at the bottom of the page there is an email contact link for Harish
Thank you for your ardent reply. To my disappointment, I couldn't find the email contact for Harish. Could you please send me the contact to me directly? Thanks
Hi, Walter, I have found the contact for Harish, thank you anyway!

Iniciar sesión para comentar.

Más respuestas (3)

YASSER ERYANI
YASSER ERYANI el 14 de Abr. de 2015
Editada: YASSER ERYANI el 14 de Abr. de 2015
Dear Harish, how do I set l=bitreversal(i) in the main SCD Algorithm? Could you pleas clarify.

1 comentario

Harish will probably not be notified of your message. If you click on the link at monash.edu.au then at the bottom of the page there is an email contact link for Harish

Iniciar sesión para comentar.

Muhammad Awais
Muhammad Awais el 3 de Abr. de 2017
Harish how can i set the range for the snr in script

1 comentario

Harish will probably not be notified of your message. If you click on the link at monash.edu.au then at the bottom of the page there is an email contact link for Harish

Iniciar sesión para comentar.

noor saad
noor saad el 29 de Jun. de 2018
Dear Harish I am working on CRC aided successive cancellation list decoder, I ended the design of encoder but i face difficulty in design the decoder in matlab simulation , if you can help me in design of it or give me any advice.
regards

1 comentario

Harish will probably not be notified of your message. If you click on the link at monash.edu.au then at the bottom of the page there is an email contact link for Harish

Iniciar sesión para comentar.

Categorías

Más información sobre Develop Apps Using App Designer en Centro de ayuda y File Exchange.

Preguntada:

el 3 de Feb. de 2015

Comentada:

el 2 de Jul. de 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by