function tfplist = etsi_tfplansVDSL(tfplist); %% =========================================================================== %etsi_tfplansVDSL(tfplist) - Sets up the tfplan for ETSI VDSL % % Parameter: tfplist Structure describing the time and freq plan % Returns: tfplist Structure describing the time and freq plan % % Example(s): % ex.tfplist = etsi_tfplanVDSL(ex.tfplist); Add to existing tfplist % tfplan=getList(ex.tfplist,'VDSL-FDD-S5'); Get this VDSL plan % % ex.tfplist = etsi_tfplanVDSL([]); Create a new tfplist % tfplan=getList(ex.tfplist,'VDSL-FDD-S5'); Get this VDSL plan % % Reference: % FTW's xDSLsimu manual, Telia 1998,1999 % Mask definitions: % ETSI VDSL standard Part 2, Version 0.0.5 (1999-06) %% =========================================================================== %% =========================================================================== % Copyright (C): % 1999-2000 by Telia Research AB, Lulea, Sweden; % 2000-2003 by Forschungszentrum Telekommunikation Wien, Austria; % All rights reserved. % Project : FTW's xDSLsimu % Author(s) : Tomas Nordstrom (Tomas.Nordstrom@FTW.at) % : Daniel Bengtsson (Daniel.J.Bengtsson@Telia.se) % : Bo Engstrom (bosse@upzide.com) % : Petr Kadlec (kadlec@ftw.at) % % CVS: $Id: etsi_tfplansVDSL.m,v 3.4 2003/08/12 13:10:50 tono Exp $ %% =========================================================================== % Change History % 1998-10-19 (ToNo) Created % 1999-08-25 (DaB) Added new CAP masks % 1999-09-30 (DaB) Rewritten for new ex struct % 1999-10-22 (ToNo) Split out VDSL definitions % 1999-11-04 (ToNo) Made it into a function % 2000-04-11 (DaB) Added sync % 2000-04-27 (ToNo) Added ex.param.frequency.f for the calcPSD call % 2000-05-04 (UvAn) Uppdated the SCM masks according to TS 101 270-2 v0.1.2 spec % 2000-05-26 (UvAn) Added possibillities to fix the bitrate % 2001-06-14 (Bosse) Octave port % 2002-04-17 (ToNo) Uppdated the SCM masks according to % TS 101 270-2 v1.1.5 spec % 2002-07-22 (PeKa) Octave port % 2003-01-02 (ToNo) Update of PBO methods and template %% =========================================================================== % Default values def_tfplan = templateTFP; % Default VDSL PBO def_tfplan.PSD.PBO.method = 'None'; % Power back-off method (-=not applicable) def_tfplan.PSD.PBO.param.len = 1500; % PBO parameter {length [m]} def_tfplan.PSD.PBO.param.freq = 2e6; def_tfplan.PSD.PBO.param.maxlen = 1500; def_tfplan.PSD.PBO.param.refa = [-47.3 -54]; % RefRef noise A&B def_tfplan.PSD.PBO.param.refb = [-28.01 -19.22]; % (should be changed later) def_tfplan.PSD.PBO.param.upf_start = [3000 7050]*1e3; def_tfplan.PSD.PBO.param.upf_stop = [5100 12000]*1e3; % VDSL default vaules vdsl_tfplan=def_tfplan; vdsl_tfplan.PSD.HAM.active = 1; % VDSL SCM default values alpha=0.2; scm_tfplan=vdsl_tfplan; scm_tfplan.PSD.alpha=alpha; scm_tfplan.PSD.HAM.active=0; % inactive HAM-band for SCM scm_tfplan.lcname='VDSL-SCM'; scm_tfplan.fixBitrate.name = 'Fixed constellation'; % Fixed bitrate method scm_tfplan.fixBitrate.active = 1; % 0=inactive, 1=active % VDSL TFPlan defintions % -------------------------- % VDSL FDD, Coalition example from ETSI TS 101 270-2 v0.1.2 (2000-03) P=etsi_modelsVDSL_SCM('S1M'); tmp_tfplan=scm_tfplan; tmp_tfplan.name='VDSL-test'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.name = 'None'; % Fixed bitrate method tmp_tfplan.fixBitrate.active = 0; % 0=inactive, 1=active tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD, Coalition example S1M, S2M, S3M, A1M, A2M, A3M built on frequnency plan 997 tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('S1M'); tmp_tfplan.name='VDSL-FDD-S1M'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[5]; % Constellation C - 32 tmp_tfplan.fixBitrate.param.constellation.up=[4 2]; % Constellation C - 16 4 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('S2M'); tmp_tfplan.name='VDSL-FDD-S2M'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[6]; % Constellation C - 64 tmp_tfplan.fixBitrate.param.constellation.up=[4 2]; % Constellation C - 16 and 4 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('S3M'); tmp_tfplan.name='VDSL-FDD-S3M'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[7 4]; % Constellation C - 128 and 16 tmp_tfplan.fixBitrate.param.constellation.up=[5 3]; % Constellation C - 32 and 8 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A1M'); tmp_tfplan.name='VDSL-FDD-A1M'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[5]; % Constellation C - 32 tmp_tfplan.fixBitrate.param.constellation.up=[2]; % Constellation C - 4 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A2M'); tmp_tfplan.name='VDSL-FDD-A2M'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[6]; % Constellation C - 64 tmp_tfplan.fixBitrate.param.constellation.up=[2]; % Constellation C - 4 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A3M'); tmp_tfplan.name='VDSL-FDD-A3M'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[7 4]; % Constellation C - 128 and 16 tmp_tfplan.fixBitrate.param.constellation.up=[3]; % Constellation C - 8 tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD, Coallision example S1R1, S2R1, S3R1, A1R1, A2R1, A3R1, A4R1 built on frequnency plan 998 tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('S1R1'); tmp_tfplan.name='VDSL-FDD-S1R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[4]; % Constellation C - 16 tmp_tfplan.fixBitrate.param.constellation.up=[5 2]; % Constellation C - 32 4 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('S2R1'); tmp_tfplan.name='VDSL-FDD-S2R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[5]; % Constellation C - 32 tmp_tfplan.fixBitrate.param.constellation.up=[5 3]; % Constellation C - 32 and 8 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('S3R1'); tmp_tfplan.name='VDSL-FDD-S3R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[6 2]; % Constellation C - 64 and 4 tmp_tfplan.fixBitrate.param.constellation.up=[6 5]; % Constellation C - 64 and 32 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A1R1'); tmp_tfplan.name='VDSL-FDD-A1R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[4]; % Constellation C - 16 tmp_tfplan.fixBitrate.param.constellation.up=[3]; % Constellation C - 8 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A2R1'); tmp_tfplan.name='VDSL-FDD-A2R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[5]; % Constellation C - 32 tmp_tfplan.fixBitrate.param.constellation.up=[3]; % Constellation C - 8 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A3R1'); tmp_tfplan.name='VDSL-FDD-A3R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.down=[6 2]; % Constellation C - 64 and 4 tmp_tfplan.fixBitrate.param.constellation.up=[4]; % Constellation C - 16 tfplist=insertList(tfplist,tmp_tfplan); tmp_tfplan=scm_tfplan; P=etsi_modelsVDSL_SCM('A4R1'); tmp_tfplan.name='VDSL-FDD-A4R1'; tmp_tfplan.PSD.downstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.down), '],[', sprintf('%g ',P.fc.down) ,'])']; tmp_tfplan.PSD.upstream =['10.^-6.*sqrcPSD(ex.param.frequency.f,[', sprintf('%g ',alpha), '],[', sprintf('%g ',P.fs.up), '],[', sprintf('%g ',P.fc.up) ,'])']; tmp_tfplan.PSD.fs=P.fs; tmp_tfplan.PSD.fc=P.fc; tmp_tfplan.fixBitrate.param.constellation.up=[7 5]; % Constellation C - 64 and 32 tmp_tfplan.fixBitrate.param.constellation.up=[5]; % Constellation C - 32 tfplist=insertList(tfplist,tmp_tfplan); % VDSL TDD systems % VDSL TDD sym 1:1 tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-TDD-sym-1:1'; tmp_tfplan.PSD.downstream ='calcPSD([.3e6 -120 .3e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.timeDivision.up=.5; % Time used in up resp. down link tmp_tfplan.timeDivision.down=.5; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-TDD'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL TDD asym 2:1 tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-TDD-asym-2:1'; tmp_tfplan.PSD.downstream ='calcPSD([.3e6 -120 .3e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.timeDivision.up=1/3; % Time used in up resp. down link tmp_tfplan.timeDivision.down=2/3; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-TDD'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL TDD asym 4:1 tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-TDD-asym-4:1'; tmp_tfplan.PSD.downstream ='calcPSD([.3e6 -120 .3e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.timeDivision.up=1/5; % Time used in up resp. down link tmp_tfplan.timeDivision.down=4/5; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-TDD'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL TDD asym 8:1 tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-TDD-asym-8:1'; tmp_tfplan.PSD.downstream ='calcPSD([.3e6 -120 .3e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.timeDivision.up=1/9; % Time used in up resp. down link tmp_tfplan.timeDivision.down=8/9; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-TDD'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD-Z sym example FTTCab tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD-Z-sym-FTTCab'; tmp_tfplan.PSD.upstream='calcPSD([200e3 -120 200e3 -60 300e3 -60 300e3 -120 1.61e6 -120 1.61e6 -60 4.0e6 -60 4.0e6 -120 7.10e6 -120 7.10e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.downstream='calcPSD([300e3 -120 300e3 -60 1.61e6 -60 1.61e6 -120 4.0e6 -120 4.0e6 -60 7.10e6 -60 7.10e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-DMT'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD-Z sym to asym example FTTCab tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD-Z-s2a-FTTCab'; tmp_tfplan.PSD.upstream='calcPSD([200e3 -120 200e3 -60 300e3 -60 300e3 -120 2.3e6 -120 2.3e6 -60 4.35e6 -60 4.35e6 -120 7.10e6 -120 7.10e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.downstream='calcPSD([300e3 -120 300e3 -60 2.3e6 -60 2.3e6 -120 4.35e6 -120 4.35e6 -60 7.10e6 -60 7.10e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-DMT'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD-Z asym example FTTEx tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD-Z-asym-FTTEx'; tmp_tfplan.PSD.upstream='calcPSD([200e3 -120 200e3 -60 400e3 -60 400e3 -120 1.1e6 -120 1.1e6 -60 2.65e6 -60 2.65e6 -120 7.10e6 -120 7.10e6 -60 7.50e6 -60 7.50e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.downstream='calcPSD([400e3 -120 400e3 -60 1.1e6 -60 1.1e6 -120 2.65e6 -120 2.65e6 -60 7.10e6 -60 7.10e6 -120 7.50e6 -120 7.50e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-DMT'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD-Z asym example FTTEx PB tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD-Z-asym-FTTEx-PB'; tmp_tfplan.PSD.upstream='calcPSD([100e3 -120 100e3 -40 300e3 -40 300e3 -120 1.1e6 -120 1.1e6 -60 4.3e6 -60 4.3e6 -120 7.10e6 -120 7.10e6 -60 7.50e6 -60 7.50e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.downstream='calcPSD([300e3 -120 300e3 -40 1.1e6 -40 1.1e6 -120 4.3e6 -120 4.3e6 -60 7.10e6 -60 7.10e6 -120 7.50e6 -120 7.50e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-DMT'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD-Z sym example FTTEx tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD-Z-sym-FTTEx'; tmp_tfplan.PSD.upstream='calcPSD([200e3 -120 200e3 -60 400e3 -60 400e3 -120 1.71e6 -120 1.71e6 -60 4.10e6 -60 4.10e6 -120 7.10e6 -120 7.10e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.downstream='calcPSD([400e3 -120 400e3 -60 1.71e6 -60 1.71e6 -120 4.10e6 -120 4.10e6 -60 7.10e6 -60 7.10e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-DMT'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD-Z sym example FTTEx PB tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD-Z-sym-FTTEx-PB'; tmp_tfplan.PSD.upstream='calcPSD([100e3 -120 100e3 -40 300e3 -40 300e3 -120 1.1e6 -120 1.1e6 -60 4.10e6 -60 4.10e6 -120 7.10e6 -120 7.10e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.downstream='calcPSD([300e3 -120 300e3 -40 1.1e6 -40 1.1e6 -120 4.10e6 -120 4.10e6 -60 7.10e6 -60 7.10e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-DMT'; tfplist=insertList(tfplist,tmp_tfplan); % VDSL FDD tmp_tfplan=vdsl_tfplan; tmp_tfplan.name='VDSL-FDD'; tmp_tfplan.PSD.downstream ='calcPSD([.3e6 -120 .3e6 -60 3.5e6 -60 3.5e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream ='calcPSD([3.5e6 -120 3.5e6 -60 11.04e6 -60 11.04e6 -120],''Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.PBO.method='RefRef'; % Power back-off method tmp_tfplan.lcname='VDSL-theo'; tfplist=insertList(tfplist,tmp_tfplan);