mdemapdlrx.m

来自「OFDMA 物理层开发的matlab 源码.飞思卡尔提供.对物理层开发的工程师有」· M 代码 · 共 52 行

M
52
字号
%***************************************************************************
%  802.16-2004 OFDMA PHY - mDemapDLRx downlink function
%
%    Description: This functions recives two OFDMA symbols and reorganizes them 
%                   into a slot vector strcuture, based on subchanels
%                   Input assumed as: 
%   
%    Input: 
%                 MappedSymbols: 2 OFDMA symbols with data values mapped.
%                   Structured in 2 columns each contains data of OFDMA
%                   symbol.
%    Output:    
%                 Symbols_subchannels: Output data organized in matrix of 
%                   Nx48 elements. N depends on the FFT size (60,30,...)   
%                       
%    Functions:
%                N/A
%                 
%    Data Files:
%                N/A
%                   
%***************************************************************************

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%  Property of Freescale
%  Freescale Confidential Proprietary
%  Freescale Copyright (C) 2005 All rights reserved
%  ----------------------------------------------------------------------------
%  $RCSfile: mDemapDLRx.m.rca $
%  $Revision: 1.2 $
%  $Date: Wed Aug  2 07:24:26 2006 $
%  Target: Matlab
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


function [Symbols_subchannels] = mDemapDLRx(MappedSymbols)

[m,n] = size(MappedSymbols);

if (n~=2) | mod(m,24) 
   error('Error: Input must be two column vectors. Length must be a multiple of 24.');
end

N = m/24;

%one colum per OFDMA symbol (1st symbol = odd columns, 2st symbol = even columns
temp = reshape(MappedSymbols,24,N*2); 

%one column per slot vector
Symbols_subchannels = reshape([temp(:,1:end/2); temp(:,end/2+1:end)],N*48,1);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?