Re: [问题]随机产生一组16-QAM讯号

楼主: zero2962 (Cipher)   2015-07-12 21:56:01
※ 引述《Feltonee (ee)》之铭言:
: 我想要写一个产生16-QAM随机讯号
: 目前有个想法是用if条件式来写
: 不过感觉运算起来会很慢而且很蠢 (抱歉程式实在不强
: 不知道是否有较神的写法
: 谢谢
qam_bit=rand(2048,4) > 0.5;
data_bit=qam_bit;
[mx,mode]=size(data_bit);
%16-QAM
normal=1/sqrt(10);
QAM_map=[ 3; 1; -3; -1];
qam_I=data_bit(:,1:2:mode)*(2.^[mode/2-1:-1:0]).';
qam_Q=data_bit(:,2:2:mode)*(2.^[mode/2-1:-1:0]).';
QAM_x=QAM_map(qam_I+1)+j*QAM_map(qam_Q+1);
plot(QAM_x,'+')
axis([-5 5 -5 5])
P.S. 16-QAM => sqrt(16) => 4-PAM
楼主: zero2962 (Cipher)   2015-07-13 12:40:00
若在QAM_map加上-7 -5 5 7,那么就变成64-QAM

Links booklink

Contact Us: admin [ a t ] ucptt.com