📄 mslotprocess_lib2.m
字号:
end
end
% Demodulation mapper
DataDM = DataDR(SubCh,:).';
[DataOut BlkSize] = mDemodMapper(DataDM,length(DataDM),SlotSubChModType,DemapScale);
Data(SubCh,1:BlkSize) = DataOut.';
end
end
SlotMeasurement = [RSSI;CINR;FreqOff;TimeOff];
%Test vector generation
if TC
FN=0;
ZN=0;
TCstr=sprintf('TC%03d',TC);
if ~exist(['../vector/ref/',TCstr],'dir')
mkdir(['../vector/ref/',TCstr]);
end
if ~exist(['../vector/in/',TCstr],'dir')
mkdir(['../vector/in/',TCstr]);
end
if ~exist(['../../SPKernel/SlotExtraction/vector/ref/',TCstr],'dir')
mkdir(['../../SPKernel/SlotExtraction/vector/ref/',TCstr]);
end
if ~exist(['../../SPKernel/SlotMeasurement/vector/in/',TCstr],'dir')
mkdir(['../../SPKernel/SlotMeasurement/vector/in/',TCstr]);
end
if ~exist(['../../SPKernel/SlotMeasurement/vector/ref/',TCstr],'dir')
mkdir(['../../SPKernel/SlotMeasurement/vector/ref/',TCstr]);
end
if ~exist(['../../SPKernel/CEIntraTile/vector/in/',TCstr],'dir')
mkdir(['../../SPKernel/CEIntraTile/vector/in/',TCstr]);
end
if ~exist(['../../SPKernel/CEIntraTile/vector/ref/',TCstr],'dir')
mkdir(['../../SPKernel/CEIntraTile/vector/ref/',TCstr]);
end
if ~exist(['../../SPKernel/EqZF/vector/in/',TCstr],'dir')
mkdir(['../../SPKernel/EqZF/vector/in/',TCstr]);
end
if ~exist(['../../SPKernel/EqZF/vector/ref/',TCstr],'dir')
mkdir(['../../SPKernel/EqZF/vector/ref/',TCstr]);
end
if ~exist(['../../SPKernel/MRC/vector/in/',TCstr],'dir')
mkdir(['../../SPKernel/MRC/vector/in/',TCstr]);
end
if ~exist(['../../SPKernel/MRC/vector/ref/',TCstr],'dir')
mkdir(['../../SPKernel/MRC/vector/ref/',TCstr]);
end
if ~exist(['../../SPKernel/DemodMap/vector/in/',TCstr],'dir')
mkdir(['../../SPKernel/DemodMap/vector/in/',TCstr]);
end
if ~exist(['../../SPKernel/DemodMap/vector/ref/',TCstr],'dir')
mkdir(['../../SPKernel/DemodMap/vector/ref/',TCstr]);
end
for ant=1:NAntenna
%IF2eRX
mGenBin(double(FullData),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2eRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(FullData),... %dump only fixp test vectors
sprintf('../../SPKernel/SlotExtraction/vector/ref/%s/IF2eRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(FullData),... %dump only fixp test vectors
sprintf('../../SPKernel/SlotMeasurement/vector/in/%s/IF2eRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
%IF2eRXPlt
mGenBin(double(FullPilot),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2eRXPlt_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(FullPilot),... %dump only fixp test vectors
sprintf('../../SPKernel/SlotExtraction/vector/ref/%s/IF2eRXPlt_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(FullPilot),... %dump only fixp test vectors
sprintf('../../SPKernel/SlotMeasurement/vector/in/%s/IF2eRXPlt_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
%IF2dRXCtrl
mGenBin(int16(IF2dRXCtrl),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2dRXCtrl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','R');
mGenBin(int16(IF2dRXCtrl),... %dump only fixp test vectors
sprintf('../../SPKernel/SlotMeasurement/vector/ref/%s/IF2dRXCtrl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','R');
%IF2dRXPlt (Copy of IF2eRXPlt)
mGenBin(double(FullPilot),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2dRXPlt_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(FullPilot),... %dump only fixp test vectors
sprintf('../../SPKernel/CEIntraTile/vector/in/%s/IF2dRXPlt_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
%IF2cRXCtrl
mGenBin(int16(IF2cRXCtrl),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2cRXCrtl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(int16(IF2cRXCtrl),... %dump only fixp test vectors
sprintf('../../SPKernel/CEIntraTile/vector/ref/%s/IF2cRXCrtl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(int16(IF2cRXCtrl),... %dump only fixp test vectors
sprintf('../../SPKernel/EqZF/vector/in/%s/IF2cRXCrtl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
%IF2cRX (Copy of IF2eRX)
mGenBin(double(FullData),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2cRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(FullData),... %dump only fixp test vectors
sprintf('../../SPKernel/EqZF/vector/in/%s/IF2cRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
%IF2bRX
IF2bRX=reshape(reshape(DataAntEq(ant,:,:),NSubCh,FPULNDATACARRIER).',[],1);
mGenBin(double(IF2bRX),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2bRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(IF2bRX),... %dump only fixp test vectors
sprintf('../../SPKernel/EqZF/vector/ref/%s/IF2bRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
mGenBin(double(IF2bRX),... %dump only fixp test vectors
sprintf('../../SPKernel/MRC/vector/in/%s/IF2bRX_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','1R1I');
%IF2bRXCtrl (Copy of %IF2dRXCtrl)
mGenBin(int16(IF2dRXCtrl),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2bRXCtrl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','R');
mGenBin(int16(IF2dRXCtrl),... %dump only fixp test vectors
sprintf('../../SPKernel/MRC/vector/in/%s/IF2bRXCtrl_%02d_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex,ant-1),...
'int16','R');
end
%IF2aRX
mGenBin(double(FullDataMRC),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2aRX_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','1R1I');
mGenBin(double(FullDataMRC),... %dump only fixp test vectors
sprintf('../../SPKernel/MRC/vector/ref/%s/IF2aRX_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','1R1I');
mGenBin(double(FullDataMRC),... %dump only fixp test vectors
sprintf('../vector/in/%s/IF2aRX_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','1R1I');
%IF2aRXCtrl
mGenBin(int16(IF2aRXCtrl),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2aRXCtrl_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
mGenBin(int16(IF2aRXCtrl),... %dump only fixp test vectors
sprintf('../vector/in/%s/IF2aRXCtrl_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
mGenBin(int16(IF2aRXCtrl),... %dump only fixp test vectors
sprintf('../../SPKernel/MRC/vector/ref/%s/IF2aRXCtrl_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
%IF2aaRXCtrl
mGenBin(double(FullDataRotation),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2aaRXCtrl_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
mGenBin(double(FullDataRotation),... %dump only fixp test vectors
sprintf('../../SPKernel/DemodMap/vector/in/%s/IF2aaRXCtrl_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
%IF2RX
mGenBin(double(reshape(Data.',[],1)),... %dump only fixp test vectors
sprintf('../vector/ref/%s/IF2RX_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
mGenBin(double(FullDataRotation),... %dump only fixp test vectors
sprintf('../../SPKernel/DemodMap/vector/ref/%s/IF2RX_%02d_%02d_%02d.lod',TCstr,FN,ZN,SlotVecIndex),...
'int16','R');
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -