function ttlist = etsi_loopsSDSL(ttlist,len,selfdisturbers,namestr); %% =========================================================================== % etsi_loopsSDSL - Define the ETSI SDSL testloops % % Parameter: ttlist List to insert the testloops % len Length for loop 1 to 8 % selfdisturbers Number of self disturbers in the loop % namestr Name string extension % Returns: ttlist List with inserted the testloops % % Example(s): % % Algorithmic details: % % Reference: % ETSI STC TM6 Permanent document TM6(98)10 (DTS/TM-06018), 980p10a3 % ETSI STC TM6 Helsinki 2000, WD22R3 & WD19R3, 002t22a0 %% =========================================================================== %% =========================================================================== % Copyright (C): % 2000-2002 by Forschungszentrum Telekommunikation Wien, Austria; % All rights reserved. % Project : B1, SDSL simu % Author(s) : Tomas Nordstrom (Tomas.Nordstrom@FTW.at) % Driton Statovci % % CVS: $Id: etsi_loopsSDSL.m,v 1.4 2002/03/18 11:59:07 tono Exp $ %% =========================================================================== % Change History % 2000-06-19 (ToNo) Created % 2000-07-17 (ToNo) Added header, ETSI TM6 002t22a comments % 2000-10-25 (GS) Made it usable for scalar len input argument % 2000-11-08 (ToNo) Changed format for distances % 2001-05-05 (DS) Swapped CO/NT side as now defined in the standard % 2002-03-18 (ToNo) Renamed the SDSL cables %% =========================================================================== if nargin<3, selfdisturbers = 49; % 89 for noise A and D, while only 15 for B and C end nomodems = selfdisturbers+1; if nargin<4, namestr=''; end if length(len) == 7, len(8) = len(4); end; if length(len) == 1 len=len.*ones(1,8); end %% =========================================================================== % Loop #1 connects the transceivers back-to-back. This loop mainly % stresses the analogue front end (AFE) and the dynamic range of % the digital processing. tt.name= sprintf('SDSL-Loop1%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {len(1) 'ETSI-SDSL-PE04' 'NT' sprintf('%.0fm ->',len(1))}; ]; tt.traffic=[ {1 2 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #2 is a single straight wire that represents typical %deployment scenarios. When the length of the loop is set to %maximum reach this loops stresses the SDSL equipment similar to %typical deployment. tt.name= sprintf('SDSL-Loop2%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {len(2) 'ETSI-SDSL-PE04' 'NT' sprintf('%.0fm ->',len(2))}; ]; tt.traffic=[ {1 2 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #3 consists of four segments of wires of different %diameter. As a result the loop has ripples in its input impedance %and mainly stresses the echo canceller (EC). This loop has similar %impedance characteristics in both upstream and downstream %directions. seglens=[.1834 .3466 .2866 .1834].*len(3); tt.name= sprintf('SDSL-Loop3%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {seglens(1) 'ETSI-SDSL-PE04' '' sprintf('%.0fm ->',seglens(1))}; {seglens(2) 'ETSI-SDSL-PE05' '' sprintf('%.0fm ->',seglens(2))}; {seglens(3) 'ETSI-SDSL-PE06' '' sprintf('%.0fm ->',seglens(3))}; {seglens(4) 'ETSI-SDSL-PE04' 'NT' sprintf('%.0fm ->',seglens(4))}; ]; tt.traffic=[ {1 5 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #4 consists of three segments of wires with different %diameter. Note that it is the same loop as Loop #8, but reversed in %transmission direction. At the NT end of this loop the impedance %is above 150Ohm so the NT end of this loop stresses the behaviour %of transceivers with high impedance loops. The loop impedance on %the LT side of Loop #4 is not as interesting and theoretically the %transfer function is the same in both directions. It is, therefore, more %interesting to test this in the downstream direction (receiver %under test connected to the NT end), that is, Loop #8. seglens=[.3466 .3668 .2866].*len(4); tt.name= sprintf('SDSL-Loop4%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {seglens(1) 'ETSI-SDSL-PE05' '' sprintf('%.0fm ->',seglens(1))}; {seglens(2) 'ETSI-SDSL-PE04' '' sprintf('%.0fm ->',seglens(2))}; {seglens(3) 'ETSI-SDSL-PE06' 'NT' sprintf('%.0fm ->',seglens(3))}; ]; tt.traffic=[ {1 4 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #5 consist of three wire segments where the middle segment %has different characteristics from the end segments. This loop has %low input impedance and mainly stresses the AFE and the EC. This %loop stresses SDSL equipment in similar ways to Loop #7. seglens=[100 len(5)-200 100]; tt.name= sprintf('SDSL-Loop5%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {seglens(1) 'ETSI-SDSL-PVC04' '' sprintf('%.0fm ->',seglens(1))}; {seglens(2) 'ETSI-SDSL-PE08' '' sprintf('%.0fm ->',seglens(2))}; {seglens(3) 'ETSI-SDSL-PVC04' 'NT' sprintf('%.0fm ->',seglens(3))}; ]; tt.traffic=[ {1 4 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #6 is the only test loop with bridge taps. The bridge taps %put spectral nulls in the insertion loss and ripples in the line %impedance. The impedance at the LT side is very low while the %impedance at the NT side is close to 135Ohm. Testing with the line %in the upstream direction will stress equipment more than testing %in the downstream direction. seglens=[.7143 .2857].*len(6); tt.name= sprintf('SDSL-Loop6%s',namestr); tt.topology=[ {0 '' 'CO' '' ... 0 '' '' ''}; {seglens(1) 'ETSI-SDSL-PE04' '' sprintf('%.0fm ->',seglens(1))... 500 'ETSI-SDSL-PE04' 'BT' '500m (ETSI-SDSL-PE04)'}; {seglens(2) 'ETSI-SDSL-PE04' 'NT' sprintf('%.0fm ->',seglens(2))... 500 'ETSI-SDSL-PE04' 'BT' '500m (ETSI-SDSL-PE04)'}; ]; tt.traffic=[ {1 3 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #7 consists of three wire segments of different diameter. The %line has low input impedance and on the LT side the impedance has %much more ripples than the NT side, so the LT side is more likely %to stress the EC. seglens=[50 .6135*(len(7)-350) .3865*(len(7)-350) 300]; tt.name= sprintf('SDSL-Loop7%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {seglens(1) 'ETSI-SDSL-PVC032' '' sprintf('%.0fm ->',seglens(1))}; {seglens(2) 'ETSI-SDSL-PE04' '' sprintf('%.0fm ->',seglens(2))}; {seglens(3) 'ETSI-SDSL-PE05' '' sprintf('%.0fm ->',seglens(3))}; {seglens(4) 'ETSI-SDSL-PVC063' 'NT' sprintf('%.0fm ->',seglens(4))}; ]; tt.traffic=[ {1 5 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt); %% =========================================================================== %Loop #8 consists of three segments of wires with different %diameter. It is the same loop as Loop #4, but reversed in %transmission direction. %At the LT end of this loop the impedance is above 150Ohm %so the LT end of this loop stresses the behaviour of transceivers %with high impedance loops. The loop impedance on the NT side of %Loop #8 is not as interesting and theoretically the transfer %function is the same in both directions. It is, therefore, more %interesting to test this loop than Loop #4. seglens=[.2866 .3668 .3466 ].*len(8); tt.name= sprintf('SDSL-Loop8%s',namestr); tt.topology=[ {0 '' 'CO' ''}; {seglens(1) 'ETSI-SDSL-PE06' '' sprintf('%.0fm ->',seglens(1))}; {seglens(2) 'ETSI-SDSL-PE04' '' sprintf('%.0fm ->',seglens(2))}; {seglens(3) 'ETSI-SDSL-PE05' 'NT' sprintf('%.0fm ->',seglens(3))}; ]; tt.traffic=[ {1 4 'SDSL' nomodems}; ]; ttlist=insertList(ttlist,tt);