test_depuncturing.m

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

M
66
字号
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%  Property of Freescale
%  Freescale Confidential Proprietary
%  Freescale Copyright (C) 2005 All rights reserved
%  ----------------------------------------------------------------------------
%  $RCSfile: test_Depuncturing.m.rca $
%  $Revision: 1.6 $
%  $Date: Fri Oct 20 14:57:02 2006 $
%  Target: Matlab
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function status = test_Depuncturing

addpath('../../../../CM/Utilities/matlab');

ModuleName = 'Depuncturing';
disp(['Testing ' ModuleName ' ... ']);

%-- Test vectors, 1st col input, 2nd col reference, 3rd depunct rate
TV = { ...
    'TC011/IF1fRX_00_00_00_00.lod' 'TC011/IF1eRX_00_00_00_00.lod' '0' ;
    'TC011/IF1fRX_00_00_01_00.lod' 'TC011/IF1eRX_00_00_01_00.lod' '0' ;
    'TC011/IF1fRX_00_00_02_00.lod' 'TC011/IF1eRX_00_00_02_00.lod' '0' ;
    'TC011/IF1fRX_00_00_03_00.lod' 'TC011/IF1eRX_00_00_03_00.lod' '0' ;
    'TC011/IF1fRX_00_00_04_00.lod' 'TC011/IF1eRX_00_00_04_00.lod' '0' ;
    'TC011/IF1fRX_00_00_05_00.lod' 'TC011/IF1eRX_00_00_05_00.lod' '0' ;
    'TC012/IF1fRX_00_00_00_00.lod' 'TC012/IF1eRX_00_00_00_00.lod' '0' ;
    'TC012/IF1fRX_00_00_01_00.lod' 'TC012/IF1eRX_00_00_01_00.lod' '2' ;
    'TC012/IF1fRX_00_00_02_00.lod' 'TC012/IF1eRX_00_00_02_00.lod' '0' ;
    'TC012/IF1fRX_00_00_03_00.lod' 'TC012/IF1eRX_00_00_03_00.lod' '2' ;
    'TC012/IF1fRX_00_00_04_00.lod' 'TC012/IF1eRX_00_00_04_00.lod' '0' ;
    'TC012/IF1fRX_00_00_05_00.lod' 'TC012/IF1eRX_00_00_05_00.lod' '1' ;
    'TC012/IF1fRX_00_00_06_00.lod' 'TC012/IF1eRX_00_00_06_00.lod' '2' ;
    };

%-- Loop over the TV
for i=1:length(TV)

    %-- Load stimuli
    In = mGetBin(['../vector/in/' TV{i,1} ],'int8','R');
    Ref = mGetBin(['../vector/ref/' TV{i,2}],'int8','R');
    rate(i) = str2num(TV{i,3});

    %-- Call Matlab function
    mOut = mDepuncturing(In,length(In),rate(i));

    %-- Compare
    result(i) = any(mOut-Ref);
    if any(result(i))
        disp(['Error: Matlab function failed for ' TV{i,1} ]);
    else
        disp(['OK: Matlab function succeeded for ' TV{i,1} ]);
    end
end

if any(result)
    disp(['Error: Matlab function ' ModuleName ' failed.' ]);
    status = -1 ;
else
    disp(['OK: Matlab function ' ModuleName ' succeeded.'  ]);
    status = 1;
end

end

⌨️ 快捷键说明

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