资源简介
v-blast matlab 仿真 包括zf ,mmse等算法的性能比较
代码片段和文件信息
function output_frame = demodulation(input_modu index)
% demodulation for IEEE802.11a
% Input: input_modu complex values representing constellation points
% index
% Output: output_frame output bit stream (data unit is one bit)
% In this version increase the quatilization levels into 8.
% note: Matlab index starts from 1
QAM_input_I = real(input_modu);
QAM_input_Q = imag(input_modu);
output_frame = zeros(1length(input_modu)*index);
switch index
case 1
BPSK_Demodu_I = [0 1]; %f(m)=(m+1)/2 + 1 so I=-1 ---> 1 I=1 ---> 2
idx = find(QAM_input_I>1);
QAM_input_I(idx) = 1;
idx = find(QAM_input_I<-1);
QAM_input_I(idx) = -1;
output_frame = BPSK_Demodu_I(round((QAM_input_I+1)/2) + 1);
case 2
QPSK_Demodu_IQ = [0 1]; %f(m)=(m+1)/2 + 1 so I=-1 ---> 1 I=1 ---> 2
idx = find(QAM_input_I>1);
QAM_input_I(idx) = 1;
idx = find(QAM_input_I<-1);
QAM_input_I(idx) = -1;
idx = find(QAM_input_Q>1);
QAM_input_Q(idx) = 1;
idx = find(QAM_input_Q<-1);
QAM_input_Q(idx) = -1;
output_frame(1:2:end) = QPSK_Demodu_IQ(round((QAM_input_I+1)/2) + 1);
output_frame(2:2:end) = QPSK_Demodu_IQ(round((QAM_input_Q+1)/2) + 1);
case 4
QAM_16_Demodu_IQ = [0 1 3 2]; %f(m)=(m+3)/2 + 1 so I=-3 ---> 1 I=1 ---> 3
idx = find(QAM_input_I>3);
QAM_input_I(idx) = 3;
idx = find(QAM_input_I<-3);
QAM_input_I(idx) = -3;
idx = find(QAM_input_Q>3);
QAM_input_Q(idx) = 3;
idx = find(QAM_input_Q<-3);
QAM_input_Q(idx) = -3;
tmp = round((QAM_input_I+3)/2) + 1;
output_frame(1:4:end) = bitget(QAM_16_Demodu_IQ(tmp)2);
output_frame(2:4:end) = bitget(QAM_16_Demodu_IQ(tmp)1);
tmp = round((QAM_input_Q+3)/2) + 1;
output_frame(3:4:end) = bitget(QAM_16_Demodu_IQ(tmp)2);
output_frame(4:4:end) = bitget(QAM_16_Demodu_IQ(tmp)1);
case 6
QAM_64_Demodu_IQ = [0 1 3 2 6 7 5 4]; %f(m)=(m+7)/2 + 1 so I=-7 ---> 1 I=1 ---> 5
idx = find(QAM_input_I>7);
QAM_input_I(idx) = 7;
idx = find(QAM_input_I<-7);
QAM_input_I(idx) = -7;
idx = find(QAM_input_Q>7);
QAM_input_Q(idx) = 7;
idx = find(QAM_input_Q<-7);
QAM_input_Q(idx) = -7;
tmp = round((QAM_input_I+7)/2) + 1;
output_frame(1:6:end) = bitget(QAM_64_Demodu_IQ(tmp)3);
output_frame(2:6:end) = bitget(QAM_64_Demodu_IQ(tmp)2);
output_frame(3:6:end) = bitget(QAM_64_Demodu_IQ(tmp)1);
tmp = round((QAM_input_Q+7)/2) + 1;
output_frame(4:6:end) = bitget(QAM_64_Demodu_IQ(tmp)3);
output_frame(5:6:end) = bitget(QAM_64_Demodu_IQ(tmp)2);
output_frame(6:6:end) = bitget(QAM_64_Demodu_IQ(tmp)1);
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2693 2004-10-03 22:04 vblast\MIMO\demodulation.m
文件 1237 2004-10-03 22:04 vblast\MIMO\modulation.m
文件 2766 2009-08-14 22:27 vblast\MIMO\vblast.m
文件 304471 2007-06-06 08:30 vblast\MIMO程序(英文).pdf
目录 0 2007-07-25 08:48 vblast\MIMO
目录 0 2011-04-26 17:12 vblast
----------- --------- ---------- ----- ----
311167 6
相关资源
- 使用Matlab进行多幅图像合成
- music算法matlab程序
- matlab 线性调频信号匹配滤波
- QPSK系统的误码率和星座图仿真
- 基于Matlab的逆变电源仿真
- 边界跟踪算法 输入是一幅图像,输出
- MATLAB GUI函数查询
- UPS的matlab仿真
- 陷波滤波器matlab程序
- 基于二维DCT的自适应水印算法matlab实
- rls算法自适应均衡器matlab实现
- 《智能优化算法及其MATLAB-(第2版)》
- matlab程序将年月日转换成当年的天数
- MATLAB 后向投影成像算法
- matlab仿真实现MSK
- Matlab实现LSB算法源代码 有窗口 可添加
- 基于matlab的井字棋
- NSGA-II matlab 源码
- MATLAB实现的LSBMLSB Matching算法含界面和
- 波形发生并生成十进制和二进制的T
-
基于Matlab_Simuli
nk的随机路面建模与 - 基于Matlab工具的遗传算法求解有约束
- EM算法matlab实现
- [网盘]卡尔曼滤波原理及应用MATLAB仿真
- 自适应滤波-matlab完整程序
- 雷达仿真界面实现基于matlab
- 信号的捕获(直接序列扩频系统的m
- 雷达目标识别问题的MATLAB代码
- EKF机器人定位-MATLAB.m
- Matlab信号平滑处理-五点滑动平均法
评论
共有 条评论