ziggyy
Newbie level 1
- Joined
- Apr 11, 2013
- Messages
- 1
- Helped
- 0
- Reputation
- 0
- Reaction score
- 0
- Trophy points
- 1,281
- Activity points
- 1,294
hi everyone
i am dealing with some matlab codes about receiving the WiMax signal. the below is first part of a m-file i have found on the internet. but i dont understand what some variables and parameters do. I would appreciate if someone help me
filename = 'E:\Wimax Files\Air Data\Air Data 1390_12_27\Freq3549MHz_FS20MS_ BW10MHz_PARK POLICE.sig'
Fs = 20e6;
fo = 5.0e6;
%% Global Parameters
CP = 1/8;
NFFT = 1024;%512;
LinkDirection = 'Downlink';
PermutationMode = 'PUSC';
NOAntenna = 1;
AmbiguityWindow=1000;
%% parameters
fs = 11.2e6%5.6e6; % or * (1+260/1e6)
BW = 10e6; %5e6
nsamp = 5; % Upsample rate for more timing correction resolution
maxCFO = 200e3;
dBW = maxCFO/BW;
cfo_maxlag = ceil( maxCFO/BW*NFFT );
bw = BW/2*(1+dBW);
L = NFFT*CP;
%% Read
nBytePerFrame = 2*floor(Fs*5e-3);
fs = nsamp*fs;
format = 'int16';
FileReadOffset = 35*nBytePerFrame;
nSamples = 800000;
fid = fopen(filename,'rb');
fseek(fid,0,'eof');
nBytes = ftell(fid);
fseek(fid, FileReadOffset, 'bof');
x = fread(fid, nSamples , format);
position = ftell(fid);
x = x).';
fclose(fid);
figure(1);
t = (0:length(x)-1)/Fs;
plot(t*1000,x)
%% Power Level
alpha = 2^-7;
p = filter(1-alpha,[1,-(1-alpha)],x.^2);
M = (2-alpha)/alpha;
figure;
plot(10*log10(abs(diff(p(M+1:M:end))./p(1:M:end-2*M))));
figure(2);
plot(t*1000,10*log10(p/max(p)))
grid on
i am dealing with some matlab codes about receiving the WiMax signal. the below is first part of a m-file i have found on the internet. but i dont understand what some variables and parameters do. I would appreciate if someone help me
filename = 'E:\Wimax Files\Air Data\Air Data 1390_12_27\Freq3549MHz_FS20MS_ BW10MHz_PARK POLICE.sig'
Fs = 20e6;
fo = 5.0e6;
%% Global Parameters
CP = 1/8;
NFFT = 1024;%512;
LinkDirection = 'Downlink';
PermutationMode = 'PUSC';
NOAntenna = 1;
AmbiguityWindow=1000;
%% parameters
fs = 11.2e6%5.6e6; % or * (1+260/1e6)
BW = 10e6; %5e6
nsamp = 5; % Upsample rate for more timing correction resolution
maxCFO = 200e3;
dBW = maxCFO/BW;
cfo_maxlag = ceil( maxCFO/BW*NFFT );
bw = BW/2*(1+dBW);
L = NFFT*CP;
%% Read
nBytePerFrame = 2*floor(Fs*5e-3);
fs = nsamp*fs;
format = 'int16';
FileReadOffset = 35*nBytePerFrame;
nSamples = 800000;
fid = fopen(filename,'rb');
fseek(fid,0,'eof');
nBytes = ftell(fid);
fseek(fid, FileReadOffset, 'bof');
x = fread(fid, nSamples , format);
position = ftell(fid);
x = x).';
fclose(fid);
figure(1);
t = (0:length(x)-1)/Fs;
plot(t*1000,x)
%% Power Level
alpha = 2^-7;
p = filter(1-alpha,[1,-(1-alpha)],x.^2);
M = (2-alpha)/alpha;
figure;
plot(10*log10(abs(diff(p(M+1:M:end))./p(1:M:end-2*M))));
figure(2);
plot(t*1000,10*log10(p/max(p)))
grid on