Skip to content

ZhipengPan/PolarCode-3GPP-MEX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PolarCode-3GPP-MEX

This code is realized by C programming language, which transformed into the mex function to be called by matlab script.

The Polar encoder and Polad decoder function follows the standard of the 3GPP latest TSG version "3GPP TS 38.212 V15.3.0 (2018-09), Multiplexing and channel coding (Release 15)"

https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3214

Copyright: Zhipeng Pan, National University of Defense Technology

polar encoder function:

codewords = polar_encoder(a,A,E,CRC_size);

a --> binary information bits, row vector;

A --> length of the binary information bits, scalar number;

E --> length of the binary codeword bits, scalar number;

CRC_size -->

Value crc_polynomial_pattern
0 No CRC
6 D^6 + D^5 + 1
11 D^11 + D^10 + D^9 + D^5 + 1
16 D^16 + D^12 + D^5 + 1
24 D^24 + D^23 + D^21 + D^20 + D^17 + D^15 + D^13 + D^12
~ + D^8 + D^4 + D^2 + D + 1

codewords --> returned codewords whose length is E;

Note: A + CRC_size <= E

polar decoder function:

a_hat = polar_decoder(LLR, A, E, L, min_sum,CRC_size);

LLR --> soft information Logarithmic Likelihood Ratios (LLRS), each having a value obtained as LLR = ln(P(bit=0)/P(bit=1)

A --> the length of the decoded information bits;

E --> the length of the codeword bits;

L --> List size of the SCL decoding algorithm

CRC_size -->

Value crc_polynomial_pattern
0 No CRC
6 D^6 + D^5 + 1
11 D^11 + D^10 + D^9 + D^5 + 1
16 D^16 + D^12 + D^5 + 1
24 D^24 + D^23 + D^21 + D^20 + D^17 + D^15 + D^13 + D^12
~ + D^8 + D^4 + D^2 + D + 1

a_hat --> returned decoded information bits whose length is A;

Result

image

Author:

Zhipeng Pan

Changsha, Hunan

Email: panzhipeng18@hotmail.com,panzhipeng10@nudt.edu.cn

About

Polar code follow the standards of 3GPP Release 15

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages