function tfplist = etsi_tfplansADSL(tfplist); %% =========================================================================== %etsi_tfplansADSL(tfplist) - Sets up tfplans for some standard alien systems % % Parameter: tfplist Structure describing the time and freq plan % Returns: tfplist Structure describing the time and freq plan % % Example(s): % ex.tfplist = etsi_tfplansADSL(ex.tfplist); Add to existing tfplist % tfplan=getList(ex.tfplist,'ADSL-ECoverPOTS'); Get tfplan for EC ADSL % % ex.tfplist = etsi_tfplansADSL([]); Create a new tfplist % tfplan=getList(ex.tfplist,'ADSL-ECoverISDN'); Get tfplan for EC ADSL % % References: % ETSI STC TM6 Draft RTS/TM-06006 rev 10a (ADSL), 2001-05 % Draft ITU-T Recommendation G.992.1 %% =========================================================================== %% =========================================================================== % Copyright (C): % 2001 by Forschungszentrum Telekommunikation Wien, Austria; % All rights reserved. % Project : The FSAN xDSL simulation tool % Author(s) : Tomas Nordstrom (Tomas.Nordstrom@FTW.at) % % CVS: $Id: etsi_tfplansADSL.m,v 1.3 2001/09/21 13:47:35 tono Exp $ %% =========================================================================== % Change History % 2001-07-03 (ToNo) Created (based of fsan_tfplansMISC) % 2001-07-05 (ToNo) Fixed the ADSL over ISDN masks % 2001-08-22 (ToNo) Fixed the corner frequency 138->120 in ADSL over ISDN % 2001-08-22 (ToNo) Reduced the masks in the transmitt band to keep them % under the total power contraint %% =========================================================================== df = 4.3125e3; % delta f (carrier BW) for ADSL; %% =========================================================================== % Template, order important! % Default values def_tfplan.name = 'N/A'; % The name of the plan def_tfplan.PSD.downstream = 'N/A'; % PSD up def_tfplan.PSD.upstream = 'N/A'; % PSD down def_tfplan.PSD.active.upstream = [1 1e6];% Active frequency area def_tfplan.PSD.active.downstream = [1 1e6];% Active frequency area def_tfplan.PSD.PBO.method = 'None'; % Power back-off method def_tfplan.PSD.PBO.param.len = 1500; % PBO parameters def_tfplan.PSD.PBO.param.freq = 2e6; def_tfplan.PSD.PBO.param.maxlen = 1500; def_tfplan.PSD.HAM.active = 0; % If HAM band should be imposed def_tfplan.timeDivision.up = 1; % Time used in up resp. down stream def_tfplan.timeDivision.down = 1; def_tfplan.timeDivision.sync = 1; % If TDD is sync. def_tfplan.fixBitrate.name = 'None'; % Fixed bitrate method def_tfplan.fixBitrate.active = 0; % 0=inactive, 1=active def_tfplan.fixBitrate.param = 'N/A'; def_tfplan.lcname = 'N/A'; % Pointer to the line code def. %% =========================================================================== % TFPlan definitions starting % ------------------------------- % ADSL over POTS; % Reference G.992.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ADSL-ECoverPOTS'; tmp_tfplan.PSD.downstream='calcPSD([1 -100.5 .004e6-1 -100.5 .004e6 -95.5 .025875e6 -40 1.104e6 -40 3.093e6 -93 4.545e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream='calcPSD([1 -100.5 .004e6-1 -100.5 .004e6 -95.5 .025875e6 -38 0.138e6 -38 0.307e6 -93 1.221e6 -93 1.63e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.lcname='ADSL-DMT'; tmp_tfplan.PSD.active.upstream=[df*(7-0.5) df*(31+0.5)]; tmp_tfplan.PSD.active.downstream=[df*(7-0.5) df*(255+0.5)]; tfplist=insertList(tfplist,tmp_tfplan); % ADSL over POTS with reduced NEXT (for FDD systems); % Reference G.992.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ADSL-FDDoverPOTS'; tmp_tfplan.PSD.downstream='calcPSD([1 -100.5 .004e6-1 -100.5 .004e6 -95.5 .080e6 -75.5 .138e6-1 -47.2 .138e6 -40 1.104e6 -40 3.093e6 -93 4.545e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream='calcPSD([1 -100.5 .004e6-1 -100.5 .004e6 -95.5 .025875e6 -38 0.138e6 -38 0.307e6 -93 1.221e6 -93 1.63e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.lcname='ADSL-DMT'; tmp_tfplan.PSD.active.upstream=[df*(7-0.5) df*(30+0.5)]; tmp_tfplan.PSD.active.downstream=[df*(38-0.5) df*(255+0.5)]; tfplist=insertList(tfplist,tmp_tfplan); % With splitter loss tmp_tfplan=def_tfplan; tmp_tfplan.name='ADSL-FDDoverPOTS_SP'; % /1.2589 => -1dB tmp_tfplan.PSD.downstream='calcPSD([1 -102.5 .004e6-1 -102.5 .004e6 -97.5 50e3 -97.5 50e3+1 -95.5 .080e6 -75.5 .138e6-1 -47.2 .138e6 -40 1.104e6 -40 3.093e6 -93 4.545e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)/1.2589'; tmp_tfplan.PSD.upstream='calcPSD([1 -102.5 .004e6-1 -102.5 .004e6 -97.5 .025875e6 -40 50e3 -40 50e3+1 -38 0.138e6 -38 0.307e6 -93 1.221e6 -93 1.63e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)/1.2589'; tmp_tfplan.lcname='ADSL-DMT'; tmp_tfplan.PSD.active.upstream=[df*(7-0.5) df*(30+0.5)]; tmp_tfplan.PSD.active.downstream=[df*(38-0.5) df*(255+0.5)]; tfplist=insertList(tfplist,tmp_tfplan); % ADSL over ISDN; % Reference: ETSI STC TM6 Draft RTS/TM-06006 rev 10a (ADSL), 2001-05 tmp_tfplan=def_tfplan; tmp_tfplan.name='ADSL-ECoverISDN'; tmp_tfplan.PSD.downstream='calcPSD([1 -93 .05e6 -93 .080e6 -84.9 .12e6 -40 1.104e6 -40 3.093e6 -93 4.545e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream='calcPSD([1 -93 .05e6 -93 .08e6 -84.9 .12e6 -38 0.276e6 -38 0.614e6 -93 1.221e6 -93 1.63e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.lcname='ADSL-DMT'; tmp_tfplan.PSD.active.upstream=[df*(33-0.5) df*(63+0.5)]; tmp_tfplan.PSD.active.downstream=[df*(33-0.5) df*(255+0.5)]; tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=def_tfplan; tmp_tfplan.name='ADSL-FDDoverISDN'; tmp_tfplan.PSD.downstream= 'calcPSD([1 -93 93100 -93 209000 -65 253990 -51.5 254000 -40 1.104e+06 -40 3.093e+06 -93 4.545e+06 -110 3e+07 -110 ] ,''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream= 'calcPSD([1 -93 .05e6 -93 .08e6 -84.9 .12e6 -38 0.276e6 -38 0.614e6 -93 1.221e6 -93 1.63e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.lcname='ADSL-DMT'; tmp_tfplan.PSD.active.upstream=[df*(33-0.5) df*(56+0.5)]; tmp_tfplan.PSD.active.downstream=[df*(64-0.5) df*(255+0.5)]; tfplist=insertList(tfplist,tmp_tfplan); % With splitter % /1.2589 => -1dB tmp_tfplan=def_tfplan; tmp_tfplan.name='ADSL-FDDoverISDN_SP'; tmp_tfplan.PSD.downstream= 'calcPSD([1 -95 93100 -95 170e3 -95 170e3+1 -93 209000 -65 253990 -51.5 254000 -40 1.104e+06 -40 3.093e+06 -93 4.545e+06 -110 3e+07 -110 ] ,''Log-Linear'',ex.param.frequency.f)/1.2589'; tmp_tfplan.PSD.upstream= 'calcPSD([1 -95 .05e6 -95 .08e6 -86.9 .12e6 -40 170e3 -40 170e3+1 -38 0.276e6 -38 0.614e6 -93 1.221e6 -93 1.63e6 -110 30.e6 -110],''Log-Linear'',ex.param.frequency.f)/1.2589'; tmp_tfplan.lcname='ADSL-DMT'; tmp_tfplan.PSD.active.upstream=[df*(33-0.5) df*(56+0.5)]; tmp_tfplan.PSD.active.downstream=[df*(64-0.5) df*(255+0.5)]; tfplist=insertList(tfplist,tmp_tfplan);