Hello,
My objective is to alter the code rate of turbo codes given a certain code-word size. Right now i'm just experimenting with just coding and rate matching. I was trying to produce a code word with rate 1/2 using the following code:
msgLen = 4032; %From 3gpp lte
cdLen = 2*msgLen; %try: code rate 1/2
mbits = randi([0,1],msgLen, 1);cd = lteTurboEncode(mbits);cdrm = lteRateMatchTurbo(cd, cdLen, 0);cdrx = lteRateRecoverTurbo(cdrm, msgLen, 0);mhat = lteTurboDecode(cdrx);
Problem: the rate recover function returns a cell with vector of length 12300×1 while my original coded vector was of size 12108×1 (3 x 4032 + 12).
Why does the rate recover function assume a transport block size of 4096 thats one step bigger than the 4032 I have used? Any help would be appreciated. Thanks!
Best Answer