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

传真(Fax)编程

开发平台:

Matlab

  1. %****************************************************************
  2. % 内容概述:生成随机的输入信号
  3. % 创 建 人:朱殿荣/QQ:235347/MSN:njzdr@msn.com
  4. % 单    位:南京邮电大学,通信工程系
  5. % 创建时间:2005年7月23日
  6. % 修改时间:
  7. % 参考文献:
  8. % 版权声明:任何人均可复制、传播、修改此文件,同时需保留原始版权信息。
  9. %****************************************************************
  10. clear;
  11. snr=10;
  12. L_seq=10000;
  13. random_in=random('Normal',0,1,1,L_seq-3);
  14. for ii=1:L_seq-3
  15.     if random_in(ii)>=0
  16.         random_in(ii)=1;
  17.     else
  18.         random_in(ii)=0;
  19.     end
  20. end
  21. %random_in=ones(1,L_seq-3);
  22. [turbod_out,alphain]=turbo(random_in);
  23. soft_in=awgn(turbod_out,snr);
  24. %--------------------------
  25. %soft_in2(1,:)=soft_in(1,alphain);
  26. %soft_in2(2,:)=soft_in(3,:);
  27. %soft_out=decoder_3GPP_MAX_new(soft_in2);
  28. %soft_out(alphain)=soft_out;
  29. %----------------------------
  30. %soft_out=decoder_3GPP_MAX_new(soft_in);
  31. %for ii=1:L_seq
  32. %    if soft_out(ii)>0
  33. %        hard_out(ii)=1;
  34. %    else
  35. %        hard_out(ii)=-1;
  36. %    end
  37. %end
  38. %----------------------------
  39. [hard_out,soft_out]=deturbo_zhang(soft_in,alphain);
  40. counter_ber=0;
  41. for jj=1:L_seq
  42.     if turbod_out(1,jj)~=hard_out(jj)
  43.         counter_ber=counter_ber+1;
  44.     end
  45. end
  46. counter_ber
  47. soft_in(1,1:10)
  48. hard_out(1:10);
  49. soft_out(1:10)