3GPP_interleaving.m
上传用户:hnyfjx
上传日期:2013-06-30
资源大小:2149k
文件大小:2k
源码类别:

传真(Fax)编程

开发平台:

Matlab

  1. function [R,C]=interleaving(x)
  2. %****************************************************************
  3. % 内容概述:3GPP标准交织器
  4. % 创 建 人:朱殿荣/QQ:235347/MSN:njzdr@msn.com
  5. % 单    位:南京邮电大学,通信工程系
  6. % 创建时间:2005年9月11日
  7. % 修改时间:
  8. % 参考文献:
  9. % 版权声明:任何人均可复制、传播、修改此文件,同时需保留原始版权信息。
  10. %****************************************************************
  11. %   K Number of bits input to Turbo code internal interleaver
  12. %   R Number of rows of rectangular matrix
  13. %   C Number of columns of rectangular matrix
  14. %   p Prime number
  15. %   v Primitive root
  16. K=length(x);
  17. %(1) Determine the number of rows of the rectangular matrix, R
  18. if K>=40 & K<=159
  19.     R=5;
  20. elseif (K>=160 & K<=200)|(K>=481 & K<=530)
  21.     R=10;
  22. else
  23.     R=20;
  24. end
  25. %(2) Determine the prime number to be used in the intra-permutation, p,
  26. %and the number of columns of rectangular matrix, C
  27. p_table=[7 11 13 17 19 23 29 31 37 41 43 ...
  28.     47 53 59 61 67 71 73 79 83 89 97 ...
  29.     101 103 107 109 113 127 131 137 139 149 151 ...
  30.     157 163 167 173 179 181 191 193 197 199 211 ...
  31.     223 227 229 233 239 241 251 257];
  32. if K>=481 & K<=530
  33.     p=53;
  34.     C=p;
  35. else
  36.     %Find minimum prime number p from p_table
  37.     ii=1;
  38.     while (p_table(ii)+1)*R<K
  39.         ii=ii+1;
  40.     end
  41.     p=p_table(ii);
  42.     %determine C 
  43.     if K<=(p-1)*R
  44.         C=p-1;
  45.     elseif K>(p-1)*R & K<=R*p
  46.         C=p;
  47.     elseif K>R*p
  48.         C=p+1;
  49.     end
  50. end
  51.         
  52.     
  53. %p_table=[7    47   101   157   223;...
  54. %    11    53   103   163   227;...
  55. %    13    59   107   167   229;...
  56. %    17    61   109   173   233;...
  57. %    19    67   113   179   239;...
  58. %    23    71   127   181   241;...
  59. %    29    73   131   191   251;...
  60. %    31    79   137   193   257;...
  61. %    37    83   139   197     0;...
  62. %    41    89   149   199     0;...
  63. %    43    97   151   211     0];
  64.