function tfplist = etsi_tfplansLegacy_v121(tfplist) %% =========================================================================== % etsi_tfplansLegacy(tfplist) - Sets up tfplans for some legacy systems % used for ETSI SpM Part 2 (version 1.2.1) % % Parameter: tfplist Structure describing the time and freq plan % Returns: tfplist Structure describing the time and freq plan % % Example(s): % ex.tfplist = etsi_tfplansLegacy(ex.tfplist); Add to existing tfplist % tfplan=getList(ex.tfplist,'ETSI-HDSL-2B1Q-D2'); Get tfplan for HDSL 2B2Q 2p % % ex.tfplist = etsi_tfplansLegacy([]); Create a new tfplist % tfplan=getList(ex.tfplist,'ETSI-ISDN-MMS43'); Get tfplan for ISDN-4BT3 % % References: % Draft ETSI TR 101 830-2 V1.2.1 (2008-xx); pds:m06p06a02_SpM2_DR %% =========================================================================== %% =========================================================================== % Copyright (C): % 2003-2009 by Forschungszentrum Telekommunikation Wien, Austria; % All rights reserved. % Project : FTW's xDSLsimu % Author(s) : Tomas Nordstrom (Tomas.Nordstrom@FTW.at) % % CVS: $Id: etsi_tfplansLegacySpM.m,v 1.2 2005/01/04 10:25:12 tono Exp $ %% =========================================================================== % Change History % 2003-11-11 (ToNo) Created (based on fsan_modelsMISC.m) % 2008-03-17 (ToNo) Updated according version 2 of SpM Part2 %% =========================================================================== %% =========================================================================== % Use a template, as order is important! def_tfplan = templateTFP; def_tfplan.fixBitrate.active = 1; % These systems use fix bitrate %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % HDSL 2B1Q model using 1 pair; from m01p20a5, verified for SpM-P2 v1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-2B1Q-1p'; tmp_tfplan.etsiname='HDSL.2B1Q/D1'; tmp_tfplan.PSD.downstream='modelPSD_HDSL2B1Q_v121(ex.param.frequency.f,1)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 1.16e6]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 1.16e6]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % Save as the new name as well tmp_tfplan.name='ETSI-HDSL-2B1Q-D1'; tfplist=insertList(tfplist,tmp_tfplan); % HDSL 2B1Q model using 2 pairs, from m01p20a5, model A2.1 from SpM-P2 v1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-2B1Q-2p'; tmp_tfplan.etsiname='HDSL.2B1Q/A21'; tmp_tfplan.PSD.downstream='modelPSD_HDSL2B1Q_v121(ex.param.frequency.f,2)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 .584e6]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 .584e6]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % Save as the new name as well tmp_tfplan.name='ETSI-HDSL-2B1Q-A21'; tfplist=insertList(tfplist,tmp_tfplan); % HDSL 2B1Q model using 2 pairs; model D2 from SpM-P2 v1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-2B1Q-D2'; tmp_tfplan.etsiname='HDSL.2B1Q/D2'; tmp_tfplan.PSD.downstream='modelPSD_HDSL2B1Q_v121(ex.param.frequency.f,21)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 .584e6]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 .584e6]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % HDSL 2B1Q model using 2 pairs; model A2.1 from SpM-P2 v1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-2B1Q-A22'; tmp_tfplan.etsiname='HDSL.2B1Q/A22'; tmp_tfplan.PSD.downstream='modelPSD_HDSL2B1Q_v121(ex.param.frequency.f,22)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 .584e6]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 .584e6]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % HDSL 2B1Q model using 3 pairs, from m01p20a5, verified for SpM-P2 v1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-2B1Q-3p'; tmp_tfplan.etsiname='HDSL.2B1Q/D3'; tmp_tfplan.PSD.downstream='modelPSD_HDSL2B1Q_v121(ex.param.frequency.f,3)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 .392e6]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 .392e6]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % Save as the new name as well tmp_tfplan.name='ETSI-HDSL-2B1Q-D3'; tfplist=insertList(tfplist,tmp_tfplan); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % HDSL CAP (1-pair) according to SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-CAP-1p'; tmp_tfplan.etsiname='HDSL.CAP/1'; tmp_tfplan.PSD.downstream='calcPSD([1e3 -57 4e3 -57 33e3 -43 63e3 -40 390.67e3 -40 419.67e3 -43 448.67e3 -60 489.02e3 -70 1.95608e6 -120 30e6 -120],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 276.2e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 276.2e3]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % HDSL CAP (2-pair) according to SpM-P2 V1.2.1 % Chaged at .297e6 from -90 to -70 compared to TM6(98)10, rev. 5; and m01p20a5 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-HDSL-CAP-2p'; tmp_tfplan.etsiname='HDSL.CAP/2'; tmp_tfplan.PSD.downstream='calcPSD([.0001e6 -57 .00398e6 -57 .0215e6 -43 .03902e6 -40 .23758e6 -40 .2551e6 -43 .27262e6 -60 .297e6 -70 1.188e6 -120 30e6 -120],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 276.2e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 276.2e3]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % ISDN 2B1Q model using 3 pairs; from m01p20a5, verfied with SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-ISDN-2B1Q'; tmp_tfplan.etsiname='ISDN.2B1Q'; tmp_tfplan.PSD.downstream='modelPSD_ISDN2B1Q(ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 160e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 160e3]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % ISDN 2B1Q model "filtered"; from SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-ISDN-2B1Q-filtered'; tmp_tfplan.etsiname='ISDN.2B1Q/filtered'; tmp_tfplan.PSD.downstream='calcPSD([1000 -32.1 10000 -32.3 20000 -33.1 30000 -34.5 40000 -36.6 50000 -39.8 60000 -44.5 65000 -47.8 70000 -52.2 75000 -59.3 80000 -126.5 85000 -61.9 90000 -57.4 100000 -55.2 110000 -57.9 115000 -62.9 120000 -68.2 125000 -79.3 130000 -90.8 135000 -104.1 140000 -117.9 145000 -132.8 150000 -136.9 160000 -140.0 170000 -140.0 180000 -136.2 190000 -135.2 200000 -135.8 210000 -137.8 220000 -140.0 30000000 -140.0 ],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 160e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 160e3]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); % ISDN 2B1Q model "line-shared"; from SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-ISDN-2B1Q-ls'; tmp_tfplan.etsiname='Line-shared ISDN.2B1Q'; tmp_tfplan.PSD.downstream='calcPSD([1000 -40.1 10000 -40.3 20000 -41.0 30000 -42.2 40000 -44.1 50000 -46.8 60000 -51.1 65000 -54.2 70000 -58.3 75000 -65.1 80000 -127.0 85000 -66.9 90000 -61.9 100000 -59.0 110000 -61.2 115000 -65.9 120000 -70.9 125000 -81.7 130000 -93.0 135000 -106.1 140000 -119.4 145000 -134.1 150000 -138.0 160000 -140.0 170000 -140.0 180000 -137.2 190000 -136.2 200000 -136.8 210000 -138.8 220000 -140.0 30000000 -140.0 ],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 160e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 160e3]; tmp_tfplan.lcname=tmp_tfplan.name; tfplist=insertList(tfplist,tmp_tfplan); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % ISDN MMS43 (aka ISDN.4BT3); from SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-ISDN-MMS43'; tmp_tfplan.etsiname='ISDN.MMS43'; tmp_tfplan.PSD.downstream='modelPSD_ISDN_MMS43(ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 200e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 200e3]; tmp_tfplan.lcname='ETSI-ISDN-MMS43'; tfplist=insertList(tfplist,tmp_tfplan); % ISDN MMS43 "filtered"; from SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-ISDN-MMS43-filtered'; tmp_tfplan.etsiname='ISDN.MMS.43/filtered'; tmp_tfplan.PSD.downstream='calcPSD([1000 -34.5 10000 -34.6 20000 -35.0 30000 -35.7 40000 -36.7 50000 -38.2 60000 -40.2 70000 -42.8 80000 -46.2 90000 -50.8 100000 -56.8 110000 -66.8 115000 -80.3 120000 -93.6 125000 -106.9 130000 -112.4 135000 -122.5 140000 -131.4 150000 -130.4 170000 -129.8 190000 -132.7 200000 -134.8 210000 -137.6 216000 -140.0 30000000 -140.0],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 200e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 200e3]; tmp_tfplan.lcname='ETSI-ISDN-MMS43'; tfplist=insertList(tfplist,tmp_tfplan); % ISDN MMS43 "line-shared"; from SpM-P2 V1.2.1 tmp_tfplan=def_tfplan; tmp_tfplan.name='ETSI-ISDN-MMS43-ls'; tmp_tfplan.etsiname='line-shared ISDN.MMS.43'; tmp_tfplan.PSD.downstream='calcPSD([1000 -42.5 10000 -42.6 20000 -42.9 30000 -43.4 40000 -44.2 50000 -45.3 60000 -46.8 70000 -48.9 80000 -51.7 90000 -55.3 100000 -60.6 110000 -70.1 115000 -83.0 120000 -96.0 125000 -109.1 130000 -114.3 135000 -124.0 140000 -132.7 150000 -131.5 170000 -130.8 190000 -133.7 200000 -135.8 210000 -138.6 216000 -140.0 30000000 -140.0],''Log-Linear'',ex.param.frequency.f)'; tmp_tfplan.PSD.upstream=tmp_tfplan.PSD.downstream; tmp_tfplan.PSD.active.upstream=[1e3 200e3]; % Not used tmp_tfplan.PSD.active.downstream=[1e3 200e3]; tmp_tfplan.lcname='ETSI-ISDN-MMS43'; tfplist=insertList(tfplist,tmp_tfplan);