matlab implementation of a static radio network planning ... · pdf filematlab implementation...

144
NPSW MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING TOOL FOR WIDEBAND CDMA Author(s): Achim Wacker (AWa) Jaana Laiho (jl) Kari Sipilä (KSi) Kari Heiska (KHe) Kai Heikkinen (KHeik) Summary: This document describes the Matlab implementation of a tool for examining planning strategies for a wideband CDMA radio network Key words: WCDMA, wideband, radio network planning, tool, implementation.

Upload: lyhanh

Post on 30-Mar-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

NPSW

MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING TOOL FOR

WIDEBAND CDMA

Author(s): Achim Wacker (AWa) Jaana Laiho (jl) Kari Sipilä (KSi) Kari Heiska (KHe) Kai Heikkinen (KHeik)

Summary: This document describes the Matlab implementation of

a tool for examining planning strategies for a wideband CDMA radio network

Key words: WCDMA, wideband, radio network planning, tool,

implementation.

Page 2: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

CONTENTS

CONTENTS ......................................................................................................................... 2

Figures .................................................................................................................................. 6

Tables.................................................................................................................................... 9

Abbreviation List............................................................................................................... 10

1 Scope ............................................................................................................ 11

2 WCDMA Radio Network Coverage Prediction and Tool Structure ...... 13 2.1 WCDMA coverage prediction process..................................................................... 13

2.1.1 Uplink prediction .......................................................................................... 14 2.1.2 Downlink prediction...................................................................................... 14

2.2 Tool structure ........................................................................................................... 14

3 General initialisation procedure ................................................................ 19 3.1 Initialisation functions.............................................................................................. 19

3.1.1 Setting system parameters - npswsys.m ........................................................ 19 3.1.2 Setting global parameters - npswini.m ......................................................... 21 3.1.3 Setting the map parameters - mapini.m........................................................ 28

3.2 Data files .................................................................................................................. 30 3.2.1 Base station data file..................................................................................... 30 3.2.2 Mobile station data file ................................................................................. 32 3.2.3 Default network performance ....................................................................... 33 3.2.4 Antenna data files.......................................................................................... 34

3.3 Initialisation phase.................................................................................................... 35 3.3.1 Setting all parameters ................................................................................... 37 3.3.2 Editing the network layout ............................................................................ 39

Page 3: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 3

npsw 5.0.0 1.7.2001

3.3.2.1 Editing BSs ........................................................................................................40 3.3.2.2 Graphical output ................................................................................................41 3.3.2.3 Area coverage analysis ......................................................................................42 3.3.2.4 Tracing a mobile station.....................................................................................43

3.3.3 Calculations performed during initialisation................................................ 43 3.3.3.1 Calculation of the path loss, Lp ..........................................................................44 3.3.3.2 Importing pre-calculated link losses and digital maps to npsw..........................45 3.3.3.3 Slow fading (shadow fading, log-normal fading), ζ...........................................48 3.3.3.4 Calculation of the antenna loss – sectorisation ..................................................49

3.3.4 Calculation of the best server ....................................................................... 51 3.3.4.1 Best server according to the received CPICH signal strength............................51 3.3.4.2 Best server based on minimum TX power needed by the MS ...........................52 3.3.4.3 Best server based on minimum path loss ...........................................................52

3.4 Loading the link performance tables ........................................................................ 52 3.5 Calculating deltaSensitivity ...................................................................................... 53 3.6 Initialise UL and DL iterations................................................................................. 53

4 Implementation of Link Level Simulation Results into npsw ................. 54 4.1 Received Eb/N0 ......................................................................................................... 54 4.2 Average power rise................................................................................................... 54 4.3 Multipath fading margin........................................................................................... 55 4.4 Diversity combining gain in SHO ............................................................................ 55 4.5 Orthogonality ........................................................................................................... 56 4.6 Link performance tables........................................................................................... 56 4.7 The functions related to link performance tables ..................................................... 58

5 Detailed Uplink Iteration Step ................................................................... 60 5.1 Radio link budget in uplink ...................................................................................... 63 5.2 Reducing the load..................................................................................................... 66 5.3 Checking for hard blocking...................................................................................... 68

5.3.1 Removing the links ........................................................................................ 68 5.4 Generating user and bit rate layers for the digital map............................................. 69 5.5 Choosing the best server........................................................................................... 69 5.6 Assigning the transmit powers to the mobile station................................................ 70 5.7 Calculating the interference in uplink ...................................................................... 71 5.8 Post processing functions related to uplink analysis ................................................ 73

5.8.1 Calculating the m and the average R ............................................................ 73 5.8.2 Calculating the best server in uplink for each map pixel .............................. 74 5.8.3 Estimating the area coverage probability in uplink...................................... 75

Page 4: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

4 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

6 Detailed Downlink Iteration Step .............................................................. 76 6.1 CPICH power allocation and calculation of the best server in downlink ................. 77 6.2 Downlink radio link budget...................................................................................... 79 6.3 Calculation of the soft handover connections........................................................... 79 6.4 Allocation of the initial base station transmit powers .............................................. 79 6.5 Estimating the C/I of all mobile stations .................................................................. 81

6.5.1 Limitation of the BS transmit powers for a single link.................................. 83 6.5.2 Limiting the total transmit power of the base stations .................................. 87 6.5.3 C/I calculation for the mobile stations.......................................................... 87

6.6 Area coverage for downlink dedicated channels ...................................................... 90 6.6.1 Parameters and usage................................................................................... 90 6.6.2 Detailed calculation...................................................................................... 91

6.7 Checking Ec/I0 for the CPICH for the iterated MSs ................................................. 95

7 Soft Handover Calculations and Common Channel Analysis................. 96 7.1 SHO Calculation ...................................................................................................... 96

7.1.1 Calculation of the SHO overhead factor....................................................... 97 7.1.2 Calculation of the SHO probabilities............................................................ 98

7.1.2.1 SHO probabilities for mobiles ...........................................................................98 7.1.2.2 SHO probabilities for the area ...........................................................................98 7.1.2.3 Softer HO analysis .............................................................................................99

7.2 Common Channel Analysis...................................................................................... 99 7.2.1 Area coverage for the CPICH channel ......................................................... 99 7.2.2 Area coverage for the CCPCH ................................................................... 101

8 Visualisation of the Results - Example Plots........................................... 103 8.1 User distribution..................................................................................................... 103

8.1.1 Number of users per pixel ........................................................................... 103 8.1.2 Bit rates of users per pixel .......................................................................... 104

8.2 Best server in UL and DL....................................................................................... 105 8.3 Number of used carriers ......................................................................................... 107 8.4 Combined DL dominance and SHO area ............................................................... 107 8.5 SHO areas............................................................................................................... 108 8.6 Cell Loading........................................................................................................... 109 8.7 Other-to-own-cell-interference ratio ...................................................................... 110 8.8 TX powers of the BS for TCH ............................................................................... 111 8.9 Transmit powers for MSs ....................................................................................... 112

Page 5: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 5

npsw 5.0.0 1.7.2001

8.10 Received signal level at BSs .................................................................................. 113 8.11 Received signal level for MSs................................................................................ 114 8.12 Link losses.............................................................................................................. 114 8.13 Traffic distribution ................................................................................................. 116 8.14 SHO overhead factor .............................................................................................. 119 8.15 SHO probabilities ................................................................................................... 119 8.16 Downlink connections for BSs............................................................................... 123 8.17 Downlink connections for MSs.............................................................................. 124 8.18 Area coverage probabilities.................................................................................... 124

8.18.1 CPICH Ec/I0 coverage................................................................................. 125 8.18.2 CCPCH Eb/Nt coverage .............................................................................. 125 8.18.3 Received CPICH level................................................................................. 126 8.18.4 Uplink dedicated channel coverage ............................................................ 128 8.18.5 Downlink dedicated channel coverage ....................................................... 130

8.19 Tracing a MS.......................................................................................................... 133

9 Items for further study and improvement of the tool ............................ 136

10 References.................................................................................................. 137

A. Table of modules ........................................................................................................ 139

Page 6: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

6 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figures Figure 2.1.The flow chart of the prediction tool npsw ....................................................... 15 Figure 3.1.An example for the npswsys.m-routine setting system parameters ................... 20 Figure 3.2.An example for the npswini.m-routine setting global parameters. ................... 28 Figure 3.3.An example for the mapini.m-routine setting the map parameters................... 29 Figure 3.4.Example for the base station file. A 3-sectored site at (0,0) and an omni site at

(3000, 0) ..................................................................................................... 32 Figure 3.5.Example for the mobile station data file............................................................ 33 Figure 3.6.Example script PerfDefault.m initialising the default network performance... 34 Figure 3.7.Example for an antenna data file used in npsw ................................................. 34 Figure 3.8.Flow chart of the initialisation phase................................................................. 36 Figure 3.9.The main map window in npsw ........................................................................ 39 Figure 3.10.The BS Options menu in npsw ....................................................................... 40 Figure 3.11.The BS edit window of npsw .......................................................................... 41 Figure 3.12.The menu for post processing in npsw............................................................ 41 Figure 3.13.The display menu in npsw .............................................................................. 42 Figure 3.14.The menu for the area coverage analyses ........................................................ 42 Figure 3.15.The npsw window for entering area coverage prediction parameters (here for

UL and DL DTCH) .................................................................................... 43 Figure 3.16.Format of the link loss data ............................................................................. 46 Figure 3.17.Orientation in digital clutter map and Matlab matrix representation............... 46 Figure 3.18.Example for water area layer, clutter type 1 represents water......................... 47 Figure 3.19.Example for antenna pattern of a 90° antenna in horizontal and vertical cut .. 49 Figure 3.20.The scenario for calculating azimuth and tilt .................................................. 50 Figure 4.1.The pedALinkPerfTables.m routine of npsw ................................................. 57 Figure 5.1.The flow chart for the tasks done in one UL iteration step in npsw.................. 62 Figure 5.2.The loss in the RLB as a function of the cell loading........................................ 65 Figure 5.3.Adjacent channel interference in UL................................................................. 72 Figure 6.1.The flow chart for the DL initialisation and iteration step in npsw................... 78 Figure 6.2.Flow chart for the interference calculation in CalcIntDL.m ............................ 82 Figure 6.3.Downlink power limits and power allocation )* min. DPCH power, scaled and

TPC dynamic range are NOT implemented in npsw ................................. 83 Figure 6.4.Flow chart of the link power limitation ............................................................. 86 Figure 6.5.Adjacent channel interference in DL................................................................. 88 Figure 7.1.Example of the matrix rxLevels1 - for example MS1 would be in SHO to BS2

and BSy, MSx would not be in SHO and MSn would be in outage........... 97 Figure 7.2.Example of the matrix rxLevels2 corresponding to rxLevels1 from Figure 7.1. 97

Page 7: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 7

npsw 5.0.0 1.7.2001

Figure 8.1.Example plot for the initial user distribution................................................... 104 Figure 8.2.Example plot for the not served user distribution showing the bit rates.......... 105 Figure 8.3.The best server in UL ...................................................................................... 106 Figure 8.4.The best server in DL ...................................................................................... 106 Figure 8.5.The number of used carriers ............................................................................ 107 Figure 8.6.Level of strongest received CPICH and SHO area.......................................... 108 Figure 8.7.The SHO area (green in this example) ............................................................ 108 Figure 8.8.Example for the own operator loading of the cells.......................................... 109 Figure 8.9.Other to own cell interference ratio................................................................. 110 Figure 8.10.The TX powers of all connections at e.g. BS 1 ............................................. 111 Figure 8.11.The TX powers of all connections at all BSs ................................................ 111 Figure 8.12.The total DTCH TX powers of all BSs ......................................................... 112 Figure 8.13.TX powers of the MSs................................................................................... 112 Figure 8.14.The received level from all MSs at (e.g.) BS 1 of operator 1 ........................ 113 Figure 8.15.RX powers of the MSs .................................................................................. 114 Figure 8.16.UL link losses of BS 1................................................................................... 115 Figure 8.17.Composite link losses for all BSs .................................................................. 115 Figure 8.18.The number of bits transmitted from each pixel............................................ 116 Figure 8.19.The average number of bits per cell in uplink direction ................................ 117 Figure 8.20.The total throughput per cell in uplink direction ........................................... 117 Figure 8.21.The total throughput per cell in downlink direction ...................................... 118 Figure 8.22.The overhead due to SHO ............................................................................. 119 Figure 8.23.The probabilities of n-way SHO for the users ............................................... 120 Figure 8.24.The probabilities for the different SHO connection types ............................. 120 Figure 8.25.The active set size for each pixel................................................................... 121 Figure 8.26.The probabilities of n CPICHs within WINDOW_ADD................................ 122 Figure 8.27.The downlink connections of BS1................................................................. 123 Figure 8.28.The downlink connections of MS392............................................................ 124 Figure 8.29.The received Eb/Nt of the CPICH (Perch) and coverage probability for 15 dB

threshold................................................................................................... 125 Figure 8.30.The received Ec/I0 of the CPICH (Perch) and coverage probability for -20 dB

threshold................................................................................................... 126 Figure 8.31.CPICH coverage for cell 1 ............................................................................ 127 Figure 8.32.Composite CPICH coverage for cells 1-3 ..................................................... 127 Figure 8.33.Composite CPICH coverage for all cells....................................................... 128 Figure 8.34.Dialog box for selecting the services to be analysed ..................................... 129 Figure 8.35.The coverage probability for one additional user (here 144 kbps and 3 km/h)

.................................................................................................................. 129 Figure 8.36.Composite UL coverage for the analysed services........................................ 130 Figure 8.37.Dialog to enter the DL DTCH coverage analysis parameters........................ 131 Figure 8.38.The needed transmit power of a downlink user with 64 kbps and 3 km/h .... 131 Figure 8.39.The cumulative downlink power distribution for the user of Figure 8.38 for the

whole selected area and the estimated needed power for a target coverage probability of 95 %................................................................................... 132

Page 8: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

8 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.40.The cumulative downlink power distribution for the user of Figure 8.38 for the coverage area of BS1 and the estimated needed power for a target coverage probability of 95 %................................................................................... 133

Figure 8.41.The route along the MS was traced ............................................................... 134 Figure 8.42.6 average strongest received CPICHs for a traced MS (from npsw 3.0.0).... 134 Figure 8.43.The 2 strongest received CPICHs in each pixel for a traced MS (from npsw

5.0.0). Only the best and the second best servers are displayed, but any number of neighbours is possible. Thecolour is from the best server plot in downlink................................................................................................... 135

Page 9: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 9

npsw 5.0.0 1.7.2001

Tables Table 6.1.bsTxPower after the dominant base station power allocation (values are in dBm,

0 meaning no connection). ......................................................................... 80 Table 6.2.bsTxPower after the power has been allocated to the SHO connections (values

are only examples, not real case)................................................................ 81 Table 10.1.Modules used in npsw 5.0.0 tool .................................................................... 139

Page 10: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

10 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Abbreviation List (T)PC (Transmit) Power Control B(T)S Base (Transceiver) Station BCCH Broadcast Control CHannel CCPCH Common Control Physical CHannel CHU CHannel Unit CPICH Common Pilot CHannel DL DownLink DTCH Dedicated Traffic Channel EIRP Equivalent Isotropic Radiated Power IF-HO InterFrequency HandOver FACH Forward Access CHannel FDMA Frequency Division Multiple Access HHO Hard HandOver HO HandOver MS Mobile Station NPS/X NOKIA's Network Planning System for UNIX npsw Network Planning Strategies for Wideband CDMA NTE North To East, in geographic systems meaning that north is the reference

direction and the angle increases clockwise (towards east). PA Power Amplifier P-CPICH Primary Common Pilot CHannel P-CCPCH Primary Common Control Physical CHannel S-CCPCH Secondary Common Control Physical CHannel PCH Paging CHannel RAB Radio Access Bearer RLB Radio Link Budget RRM Radio Resource Management SCH Shared CHannel SHO Soft HandOver or Soft Handover Overhead SNR Signal to Noise Ratio TDMA Time Division Multiple Access TX Transmit(ter) UL UpLink WCDMA Wideband Code Division Multiple Access

Page 11: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 11

npsw 5.0.0 1.7.2001

1 Scope The scope of this document is to describe the Matlab implementation of a static radio network planning tool for WCDMA, called npsw. The first phase implementation consisted of the generation of the basic computational methods, the iterative loops. In the second phase the code was changed to support multiple simultaneous bit rates and the impact of the fast power control in UL was included into the analysis. Furthermore, the sectorisation of the sites was introduced and the modelling of the soft handover gain in UL was made more correct. The third version of the tool concentrated on downlink "coverage analyses", both for dedicated and control channels. Also a downlink dedicated channel power limitation algorithm was implemented. In addition to those a few new outputs were added, the code was optimised and the GUI improved. Main achievements of the npsw development within the forth version included the removal of discovered bugs, a more correct DL modelling was introduced and possibility of including a second operator into the analysis was added. On top of that, more parameters were made from network to cell or MS specific, a new slow fading correlation model was implemented and asymmetric services for uplink and downlink were added. Link loss calculations now include mechanical antenna tilt, mast head amplifier and remote RF head. Finally new link performance tables for 2 tap Rayleigh fading channel were introduced and the tables for the existing channels were updated. For visualisation and post processing new outputs have been added. During the fifth and so far latest version update the main task has been to extend the modelling to include a second carrier. Thus the multioperator npsw has been extended so that the mobiles can make interfrequency handover (IF-HO) between the carriers (multicarrier mode) or that IF-HO is forbidden (multioperator mode). Further main achievements are the merging of uplink and downlink iterations and the more correct analyses for checking P-CPICH Ec/I0 (during iterations for the mobiles and after iterations for the whole area) and BCH (on P-CCPCH) Eb/Nt. Naturally appropriate outputs have been implemented.

Npsw itself supports no propagation calculation on a digital map; only flat earth models are implemented. npsw however supports the importing of pre-calculated propagation data

Page 12: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

12 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

and digital map information plus vector data from any 3rd party propagation calculation tool, if provided in the specified format.

The planning procedure itself is described in the book where this CD has been attached. The prediction and modelling methods introduced in this document are normally not visible to the planner, but it is important that the planner has the knowledge of the items on which the plan is sensitive to. The version of npsw this document is based on is version 5.0.0.

In Chapter 2 there is the general introduction to the prediction process and the description of the structure of the tool.

Chapter 3 concentrates on the initialisation of the tool. The initialisation functions, the parameter files and the whole initialisation phase are introduced. The description of the initial phase of the npsw contains documentation on parameter settings, addition and editing of base stations and description of calculations that are performed before the actual iterative coverage prediction. Furthermore, the impact of the sectorisation is taken into account in the initialisation phase and thus the description of the routines related to the sectorisation is part of Chapter 3.

Chapter 4 describes the implementation of the link level simulation results to npsw. Chapter 5 describes the uplink coverage prediction method. The Matlab implementation

is only concentrating on a case where the user and traffic information layers of the map are available, and thus only the prediction method using this information is described. The uplink prediction part consists of the description of the radio link budget and related items, load reduction procedure, interference estimation and the description of the iterative loop itself. At the end of the chapter the uplink service probability analysis is described.

The topic of Chapter 6 is the downlink coverage prediction. The structure of Chapter 6 is following that of the Chapter 5: the simple downlink radio link budget, interference analysis and the iterative loop itself are documented. At the end of the chapter the downlink "coverage" analysis for the downlink dedicated channel is described.

Chapter 7 is devoted for the documentation of the soft/softer handover area and overhead calculation. The soft handover calculation is currently based on the downlink best server. Also the downlink "coverage" analyses for common channels are topics of this chapter.

The Chapter 8 is offering examples of all the possible outputs currently implemented in npsw. This includes map outputs of user and traffic distributions, best server plots, plot of the used carriers, plot of the loading conditions and so on.

The Chapter 9 lists some ideas for further improvements. In Chapter 10 some of the relevant references are collected. The Appendix includes a table listing all the modules used in npsw 5.0.0. The notations in this document are to be understood as follows:

Bold font is characterising the names of Matlab files and modules used in npsw.m, like npsw.m itself or for example npswini.m.

Italic font is indicating names of variables and variables holding file names like for example sigmaLogNorm (standard deviation of the slow fading) or bsParamFile (the variable with the file name holding all the base station parameters).

Page 13: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 13

npsw 5.0.0 1.7.2001

2 WCDMA Radio Network Coverage Prediction and Tool Structure

2.1 WCDMA coverage prediction process

The development of the npsw.m has started from the assumption that the traffic layer of the digital map is in use. The use of the traffic information is the basis for the iterative process. If this information is not available/in use the coverage prediction process shall be close to a method, which is used today with non-CDMA type of networks.

The main difference between WCDMA and TDMA/FDMA coverage prediction is that the interference estimation is crucial already in the coverage prediction phase. In addition to that the different services (voice, data) have different processing gains and Eb/N0 performance and thus different receiver SINR requirements. In current coverage planning processes the base station sensitivity is constant and the coverage threshold is the same for each base station. In the case of WCDMA the coverage threshold is dependent on the number of users and used bit rates in a cell, thus it is cell and service specific.

Common features for coverage prediction also exist. In all the systems both of the links have to be analysed. In current standards the links tend to be in balance, in the case of third generation the downlink can be higher loaded than the uplink. This fact has nothing to do with the coverage planning, it is based on the different nature of services that these systems offer. The propagation calculation is basically the same for all standards, with the exception that different propagation models could be used. Another common feature is the interference analysis. In the case of WCDMA this is needed for loading and sensitivity analysis, in the case of TDMA/FDMA it is needed for frequency planning.

Page 14: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

14 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

2.1.1 Uplink prediction

The target in the uplink direction is to allocate the mobile stations' transmit powers so, that the interference levels at the base stations converge. The mobile stations are connected to the current best server, the transmit power of the mobile station is based on the sensitivity level of the best server, service the mobile station is using and the link loss. After all mobile stations are transmitting the interference can be re-estimated and new loading value and interference level for each base station are estimated. Depending on the definition of the best server the mobile station can be allocated to a new base station, the mobile station transmit power is reallocated and again the interference analysis is performed. This is repeated, until the changes in received interference at the base stations values are smaller than specified. In npsw version 1.0.0 the soft handover gain was taken into account in the radio link budget as a gain in sensitivity of a base station and it was the same for all links to that base station. In all of the later versions the modelling has been made more correct. In estimating the mobile stations' required transmit powers, SHO is taken into account by introducing a SHO gain, which is dependent on the relative received level differences of the two best servers at the MS and the MS speed (see Section 4.4).

2.1.2 Downlink prediction

The target of the downlink direction is to allocate the correct base station transmit power to each mobile station. The estimation of the correct transmit power requires iteration, since the C/I at each mobile station is dependent on the powers allocated to the other mobile stations. The orthogonality of the downlink is to some extent taken into account. The downlink prediction takes all the soft handover connections, which fulfil the soft handover criteria, into account.

2.2 Tool structure

The structure of the tool is more or less straight forward following from the general WCDMA coverage prediction process described in the previous section. There are basically four parts the tool consists of: • general initialisation • combined uplink / downlink iteration

− uplink iteration step − downlink iteration step

• post-processing / visualisation

A flow chart for an overview of the whole npsw tool is depicted in Figure 2.1.

Page 15: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 15

npsw 5.0.0 1.7.2001

Overall program flow

Global Initialisation

uplink iteration step

downlink iteration step

coverage analyses

combined UL/DLiteration

Initialise Iterations

Initialisation phase

graphical outputs

post processing

post processingphase

E N D

Figure 2.1. The flow chart of the prediction tool npsw

In initialisation phase, all needed parameter files are read, memory is allocated and calculations, which have to be done only once, are performed (for example the path loss calculation). In the uplink and downlink iteration steps various performance parameters are calculated iteratively. In the last phase the calculated information can be post-processed to produce various colour plots and statistics.

After going through all the steps, the program is terminated, i.e. possibility for automatic repetition of the iteration with another traffic distribution is not implemented at the moment as a standard feature. This means, if one analysis result is not sufficient, the parameters have to be changed appropriately and the whole process has to be repeated.

Page 16: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

16 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Following list presents a brief overview of the most important features that are supported by the version 5.0.0. They will be explained in more detail in the coming chapters. • Base station parameters can be changed until simulation is started. • Sectored base station configurations are possible. • Following path loss models are implemented:

− Okumura-Hata (flat earth and without area correction based on a map) − UMTS Vehicular − Two single slope models

• For more accurate modelling an interface to commercial network planning tools (e.g. NPS/X®, WinProp) has been implemented to import pre-calculated link loss data calculated on real morpho maps.

• site locations, antenna bearings, electrical and mechanical tilt • Slow fading is modelled as Gaussian random variable; correlation of the path loss to

two different cells is taken into account, where the correlation can be selected to be higher if cells belong to the same site. Also comparison to free space loss is included. Antenna gains and cable/body losses are included in the link losses. Each cell can be individually equipped with a MHA and/or a RF head.

• Each cell can have its own CPICH power, there are three ways to allocate the power: − A same constant value for each base station, read from the npswini.m-file. − The above mentioned power value is used, but it is corrected with the loading

situation of each base station. − For each base station the CPICH power can be set freely and it is read from the base

station structure. • Common channel performance can be analysed and "coverage" probability estimated

for − CPICH channel's Ec/I0. − CCPCH channel's Eb/Nt. CCPCH analysis can be parameterised so that it includes P-

CCPCH (for BCH analysis) and S-CCPCH (for FACH and PCH analyses). • Orthogonality of the downlink channels is modelled separately for each MS by a

channel and speed dependent orthogonality factor. • The real service and speed of the mobile stations are taken into account in uplink as well

as in downlink iteration. In addition the service (bit rate) can be different in uplink and downlink. This makes it possible to study mixed traffic cases more accurately.

• A multipath fading model is implemented by importing the results of link level simulations as look-up tables. For example in uplink the effects of the fast power control on the network can be studied as a function of mobile station speed. Currently three channels are implemented: − ITU Vehicular A. − ITU Pedestrian (Outdoor to Indoor) A. − two tap Rayleigh fading channel with two equally strong taps

• In uplink iteration step, if loading is too high, the loading is reduced by putting mobiles to outage. In multicarrier mode the mobiles are first allowed to make a certain number

Page 17: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 17

npsw 5.0.0 1.7.2001

of IF-HOs. If the allowed number is exceeded then the MS is put to outage. There are three ways to reduce the load: − Mobile stations from the whole network area are randomly removed. − Mobile stations at too highly loaded base stations are sorted and the ones requiring

highest powers are removed. − Mobile stations at too highly loaded base stations are sorted and the ones requiring

lowest powers are removed • In addition to UL overload, the base stations can be checked for hard blocking, and if

hardware resources are exceeded mobiles are put to another carrier. • Two different methods of calculating the best servers are supported, one for UL and one

for DL. • For calculating the SHO connections, a relative threshold is applied. • The SHO gain in UL and DL is dependent on the relative level differences of the two

best servers and the MS speed. • Separation between soft and softer handovers in the SHO statistics. • In DL, four methods to limit the dedicated channel power are implemented:

− Maximum power per link can be specified (absolute hardware limits, basestation.txMaxPowerPerLink, basestation.txMinPowerPerLink and service and speed dependent soft limits, which are scaled relative to the limits of a reference service, can be applied). If the link power is exceeded outageDL times, the link is put to outage. If the link was the best server connection of a mobile, the mobile is taken into outage. In multicarrier mode, mobile can be allowed to try a certain amount of IF-HO's.

− if the total transmit power of a BS or DTCHs (basestation.txMaxPower) is exceeded − links are randomly taken out from the cell area − links are sorted and the ones requiring highest powers are removed from the cell

area − links are sorted and the ones requiring lowest powers are removed from the cell

area In these cases links are taken out immediately.

• In UL, mobile stations, which need to transmit more than the maximum allowed transmit power (mobilestation.txMaxPower) in outageUL iterations, are put to outage. In multicarrier mode a certain amount of IF-HO's can be allowed.

• During one DL iteration step it is checked whether the mobile can receive the CPICH with good enough Ec/I0. If this is not the case for limitOutageCPICH iterations, mobiles are put to outage. In multicarrier mode a certain amount of IF-HO's can be allowed.

• It is possible to estimate the area coverage probability for dedicated channel in uplink and in downlink for a certain user defined service and terminal speed.

Visualised results at the moment are: • User distribution

− Number of users per pixel − Bit rates of users per pixel − colour/marker-coded according to bit rate

Page 18: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

18 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

− initial users − users in UL − users in DL − users not served according the reason for not being served

− Best server in UL and DL • Combined DL dominance and SHO area • SHO areas • SHO overhead factor • Soft/er handover probabilities • UL cell loading

− due to own operator users − due to all users

• Other to own cell interference ratio • Received signal level at BSs • Received wide band power at MSs • Link losses for selected cells and composite link losses • Traffic distribution

− Total amount of bits/pixel − Average data rate/cell − Throughput in UL/cell − Throughput in DL/cell

• TX powers of the BSs for DTCH • TX powers for MSs • Downlink connections for BSs • Downlink connections for MSs • Uplink dedicated channel coverage • Downlink dedicated channel coverage • Downlink common channel coverage

− CPICH Ec/I0 coverage − for area − for selected cells − composite

− in multioperator case for each operator separately − in multicarrier case for each carrier separately or combined for both carriers

− CCPCH Eb/Nt coverage − for area − composite

− in multioperator case for each operator separately − in multicarrier case for each carrier separately or combined for both carriers

• A single mobile station can be traced along a user given route showing the current numTraces best DL servers (strongest received CPICHs).

• Number of used carriers. This is a plot, which indicates that at a BS the allowed was exceeded and an additional carrier could be deployed.

Page 19: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 19

npsw 5.0.0 1.7.2001

3 General initialisation procedure Before starting the planning process several parameters describing the system and the network layout have to be configured. There are 3 functions setting those initialisation parameters. • npswsys.m

This function is defining parameters describing the system to be planned in general. They are parameters, which should be kept fixed during the whole network planning process.

• npswini.m In here are included those global parameters which might be changed during the planning process or different runs.

• mapini.m All the parameters describing the geographical properties of the network are set in this function.

Data describing the studied network layout are stored in 2 further files. They contain information about the base stations and the mobile.

The names of these files are specified in the npswini.m initialisation file as • bsParamFile, holding all the base stations and their data, • msParamFile, in which information about the mobile station is stored.

3.1 Initialisation functions

3.1.1 Setting system parameters - npswsys.m

The values describing the system in general are initialised in the function npswsys.m. An example for the npswsys.m function is depicted in Figure 3.1.

Page 20: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

20 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

%NPSWSYS this file contains all the system related parameters needed% for the simulation runs.%%Authors: Jaana Laiho-Steffens (jls), Achim Wacker (AWa), Kari Sipilä

(KSi)%……………%Revision: 5.0.0 Date: 02-Jan-2001%%needed m-files: none

%%%%%%%%%%%%%%%%%%%%%%% general %%%%%%%%%%%%%%%%%%%%%%frequency = 2000; % MHzchannelSpacing = 5e6; % HzchannelOffset = 1; % Offset for the 2nd operator (multiple ofthe channelSpacing)W = 3.84e6; % Hz - CDMA bandwidth

%%%%%%%%%%%%%%%%% BS parameters %%%%%%%%%%%%%%%%%%%%%%BS_noise_figure = 5; % dBThermal_noise_density = -174; % dBm/Hz

%%%%%%%%%%%%%%%%%% MS parameters %%%%%%%%%%%%%%%%%%%%%msHeight = 1.5; % mMS_noise_figure = 8; % dB

Figure 3.1. An example for the npswsys.m-routine setting system parameters

These parameters contained in npswsys.m are: • frequency

The carrier frequency used in MHz. It is not distinguished between uplink and downlink channel frequencies. The only place where it affects is the path loss calculation, but if the mean frequency between up- and downlink is taken, the error is about ± 0.4 dB assuming a carrier spacing of 190 MHz [1].

• channelSpacing The channel spacing in Hz if more than one carrier is to be used in the system.

• channelOffset The channel offset in number of channels for the second carrier either used by the same operator or by the other operator. Version 5.0.0 does not allowed anymore to have both operators on the same channel, since the used channel is indicating the operator as well.

• W The WCDMA chip rate in Hz.

• Thermal_noise_density (see remark at BS_noise_figure) The amount of thermal noise N0 in dBm/Hz. This value is defined by

TkN ⋅=0 (3.1)

Where KHz

Wk⋅

⋅= −231038.1 is the Boltzmann constant and T is the absolute

temperature in K. For a temperature of 293 K (20 °C) this results in N0 = -174 dBm/Hz.

Page 21: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 21

npsw 5.0.0 1.7.2001

• BS_noise_figure The noise figure of the base station receiver in dB. This could be set as a parameter of the base station or of a base station class, if there will be BS classes. Up to current version this is a network parameter.

• MS_noise_figure The noise figure of the mobile station receiver in dB. Also this could be made MS specific or MS class specific. In the current implementation however, all mobile stations are using the same value.

• msHeight The default height of the mobile station antenna above ground in m. Note: Although there is a MS height defined in the MS data file, the default height msHeight from npswsys.m is used for link loss calculation in order not to get different coverage areas for mobiles being in different heights.

3.1.2 Setting global parameters - npswini.m

Parameters, which are not necessarily dependent on the system to be planned or studied and therefore might not be fixed, are collected in the file npswini.m, where they can be set individually from case to case. The parameters are only shortly explained here, more detailed description can be found in the appropriate chapter. At the current stage these parameters consist of a) Common parameters for the mobile stations: • mobilestationAntennaGain in dBi • mobilestationBodyLoss

In addition to the normal body losses this value includes all the losses on the mobile station side from the antenna until the low noise amplifier of the MS receiver in dB.

• numMStype1 and numMStype2 The number of mobile stations distributed across the actual network area for carrier/operator 1 and carrier/operator 2.

• aciFilterDL A vector holding the MS selectivity in dBc as a function of the channel offset. This parameter determines the amount of interference a MS is suffering from BS transmissions in adjacent channels.

• acpFilterUL A vector holding the leakage of the MS in dBc as a function of the channel offset. This parameter determines the amount of interference a MS is transmitting into adjacent channels.

• acMinPowUL A vector holding the minimum leakage in dBm of the MS as a function of the channel offset. This parameter determines the amount of interference a MS is minimum transmitting into adjacent channels.

Page 22: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

22 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

b) Common parameters for the base stations (most of them are more explained in Sections 6.1 and 6.5): • numBStype1 and numBStype2

The number of base stations present in the network of carrier/operator 1 and carrier/operator 2. There must be at least numBSs = numBStype1 + numBStype2 base stations in the specified base station file. The base stations are assigned to numBStype1 or numBStype2 according to the usedCarr –field in the base station file. Additional BSs are left out from the simulations.

• pTxDLAbsMin If the minimum transmit power of a DTCH should be limited to more than its physical minimum this parameter is used. It is given in dBm.

• maxCPICHPower The maximum CPICH power in dBm which is used in connection with CPICHPowerSwitch 1 and 2.

• basestationChannels The number of channel elements in the pool which is common to all sectors at one site.

• aciFilterUL A vector holding the BS selectivity in dBc as a function of the channel offset. This parameter determines the amount of interference a BS is suffering from MS transmissions in adjacent channels.

• acpFilterDL A vector holding the leakage of the BS in dBc as a function of the channel offset. This parameter determines the amount of interference a BS is transmitting into adjacent channels.

• acMinPowerDL A vector holding the minimum leakage of the BS in dBm as a function of the channel offset. This parameter determines the amount of interference a BS is minimum transmitting into adjacent channels.

c) Parameters needed in the UL iteration step (for more detailed description see Chapter 5): • limitCT

The UL iteration stops, when the change of all base station receiver sensitivities (coverage thresholds) is less than limitCT compared to the previous iteration. The value is given in dB.

• limitDeltaCT The UL iteration also stops, when the maximum difference in the changes in all base station receiver sensitivities of two consecutive iterations is less than limitDeltaCT. The value is given in dB.

• limitOutageUL This parameter specifies the number of iterations in uplink a mobile station's transmit power has to exceed mobilestationTxMaxPower before it is put to outage.

• wideAreaCovR The bit rate of the reference RAB in bit/s .

Page 23: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 23

npsw 5.0.0 1.7.2001

• wideAreaCovSpeed The speed of the reference MS in km/h.

• wideAreaCovMsTxMax The maximum transmit power of the reference MS in dBm.

• loadControlSwitch Switch determining which method should be used when reducing the load automatically by putting mobile stations to another carrier (see Section 5.2).

• hardBlocking This switch is used to switch the checking for hard blocking on.

d) Parameters needed in the DL iteration step (for more detailed description see Chapter 6): • limitCI

The DL iteration ends when the maximum difference of target C/I and achieved C/I in two successive runs is less than limitCI. The value is given in dB.

• limitDeltaCI DL iteration is also terminated in case the changes between target C/I and actual achieved C/I are less than limitDeltaCI compared to previous iteration, which means adjusting the base station transmit powers does not reduce the difference in desired and actual C/I anymore. The value is given in dB.

• limitOutageDL This parameter specifies the number of iterations after which a link to a mobile station is set to outage in DL iteration because the allowed link power was exceeded.

• limitDLPowerSwitch This switch is used to switch the DL link power limitation on or off.

• reducePowerSwitch Switch determining which method should be used to reduce the transmit power of an overloaded base station by putting links to outage.

e) Common parameters for UL and DL iteration steps: • limitIFHO

Parameter specifying the number of allowed inter frequency handovers before the mobile is completely put into outage.

• limitOutageCPICH Parameter specifying the number of iterations a MSs will stay in one carrier in case it receives the CPICH of that carrier with too bad Ec/I0.

f) Parameters used in the dedicated and common channel analysis: • CPICHEcIoThreshold

The default threshold in dB which is considered enough to be able to measure the CPICH channel.

• bchEbNo The default required Eb/N0 needed to decode the BCCH information on the BCH carried by the P-CCPCH in dB.

Page 24: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

24 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

• bchCpichOffset Offset between the power of the CPICH and BCH in dB.

• bchBitRate The information bit rate uses on the BCH in bits/s.

g) Other parameters: • bsParamFile

Holds the name of the base station parameter file. • msParamFile

Stores the name of the mobile station parameter file. • linklossFile

The name of the file holding the link losses when import feature is used. • vectFile

The name of the file holding the vector info of the buildings when import feature is used.

• mapFile The name of the file holding the digital map when import feature is used.

• waterAreaFile The name of the file holding the part of the digital map when import feature is used. This is used only for display purpose or for keeping MSs from being distributed to water area. If the simulation area does not include water area this name must be deleted or set to empty matrix.

• siteCorr The square root of the correlation coefficient of the slow fading between sectors of different sites (see Section 3.3.3.1).

• sectCorr The square root of the correlation coefficient of the slow fading between sectors at the same site (see Section 3.3.3.1).

• sigmaLogNorm The standard deviation of the slow fading in dB.

• pathlossModel This parameter determines which model should be used to calculate the path losses.

• deltaHb Height difference between the BS antenna and the average rooftop level of the surrounding buildings in m. Used in UMTS vehicular path loss model.

• area_correction The area correction factors to account for different propagation conditions in different areas. As there is no map system implemented in npsw, the area correction factor applies to the whole network.

• CPICHPowerSwitch Switch determining which method is applied for setting the transmit powers of the BSs' CPICH channel.

• useImportedAntennaInfo This parameter is used to determine whether the imported antenna information is used

Page 25: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 25

npsw 5.0.0 1.7.2001

to overwrite the ones in the BS file or not. If the imported propagation data include the antenna influence, this parameter should be 1. If the propagation is imported from BSs with isotropic antennas and the antenna influence is calculated in npsw the value must be set to 0. Then the antenna info (type, direction and tilt) is taken from the BS file.

• channelFiles(n).name This vector contains the names of the files containing the link performance tables.

• mode With this switch the simulation mode is selected. 1 corresponds to 2 carrier case and 2 to 2 operator case.

• doInitialCarrierSelection If mode == 1 and doInitialCarrierSelection == 1 it is cheeked before the iteration, whether the MS can hear the CPICH channel on the carrier indicated in the MS file field usedCarr. If not, a carrier re-selection is made, if the second carrier can be heard. If mode == 1 and doInitialCarrierSelection == 2 the MSs are connected to the carrier who's CPICH can be received with highest Ec/I0. In other cases carrier assignment from MS parameter file is kept.

• randomizeMSfile The MS's are read in random order if set to 1 and in original order when set to 0.

• usePrevRandStateInMsRead This parameter has an effect only if randomizeMSfile == 1. If the parameter set to 1, the previously saved state of the random generator is loaded and used as a seed for the current random generator in randomising MS file.

• msReadDefRandState This parameter has an effect only if randomizeMSfile == 1. This is the seed for the random generator, to be used if usePrevRandStateInMsRead ~= 1.

An example for the npswini.m file can be seen in Figure 3.2. Also here the parameters should be set carefully because no sanity checking is performed.

%NPSWINI this file contains all the parameters needed for the radio% link budget calculation%%Authors: Jaana Laiho-Steffens (jls), Achim Wacker (AWa), Kari Sipilä% (KSi), Kari Heiska (KHe),% Kai Heikkinen (KHeik)%%Revision: 5.0.0 Date: 02-Jan-2001%%needed m-files: none

%%%%%%%%%%%%%%%%%%%%%%% general %%%%%%%%%%%%%%%%%%%%%%%following parameters are fixed but could be as well BS or MS%specific if different classes of BSs or MSs existmobilestationAntennaGain = 1.5;% dBimobilestationBodyLoss = 1.5; % dB

limitCT = 0.2; % dB - limit for cov. threshold (uplink% break criterion)

Page 26: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

26 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

limitDeltaCT = 0.1; % dB - limit for delta cov. th. (uplink% break criterion)

limitOutageUL = 1; % plain - # of iterations after MS is% put to outage in UL

limitCI = 0.2; % dB - limit for C/I (downlink break% criterion)

limitDeltaCI = 0.001; % dB - limit for delta C/I (downlink% break criterion)

limitOutageDL = 2; % plain - # of iterations after MS is% put to outage in DL

limitOutageCPICH = 1; % plain - # of iterations MS can stay% in the carrier with bad CPICH EcIo

limitIFHO = 2; % plain - # of allowed IFHO after MS is% put to outage

area_correction = [0]; % dB - 0 for urban,% -3 for dense urban,% 8 for suburban....numMStype1 = 650;numMStype2 = 650;numBStype1 = 10;numBStype2 = 9;

%following values are from 3GPP 25.101 and 25.104 as of 10.6.2000aciFilterUL = [65]; % channel offset 1, (BS selectivity), channel 2

% not spec.aciFilterDL = [33]; % channel offset 1, (MS selectivity), channel 2

% not spec.acpFilterDL = [45 50]; % channel offset 1, channel offset 2 (BS

% leakage)acpFilterUL = [33 43]; % channel offset 1, channel offset 2 (MS

% leakage)

%following values are from "hat"acMinPowUL = -55; %dBm <- JNuacMinPowDL = -55; %dBmacMinPowUL = -999; %dBmacMinPowDL = -999; %dBm

%%%%%%%%%%%%%%%%%%%%%%%% input files %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%msParamFile = 'ms8000_val_new.txt';bsParamFile = 'BSparam_2op.txt';linklossFile = 'validator'; % linkloss data file (.mat-file)vectFile = 'helsinki'; % vector building data (.mat-file)mapFile = 'Helsinki1'; % name of the clutter map when

% exported from nps/xwaterAreaFile = 'waterArea'; % the variable in this .mat-file

% should be called% waterArea, the filename can be% anything

%%%%%%%%%%%%%%%%%%%%%% propagation related %%%%%%%%%%%%%%%%%%%%%%%%pathlossModel = 1; % 1: Okumura Hata

% 2: UMTS pedestrian (micro)deltaHb = 15; %(needed with 2) % 3: UMTS vehicular (macro)

% 4: UMTS vehicular with hb = 15m,% f = 2000 MHz% 5: OH with hb = 35 m

Page 27: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 27

npsw 5.0.0 1.7.2001

% 6: single slope model;% slope = 40 dB/dec.% 7: Linkloss data imported% 8: Linkloss data imported and vector% data displayed)

useImportedAntennaInfo = 0; % 0: don't use antenna type/dir./tilt% imported, keep old (antenna should% have been isotropic)% 1: use orig. antenna type/dir./tilt

sigmaLogNorm = 0; % standard deviation for the log normal% fading [dB]

sectCorr = 0.8; % fading correlation between sectors at% same cell

siteCorr = 0.5; % fading correlation between sectors at% different cell

%Names of the linkPerfTables definition files are given here without%the .m extension%In BS file the number in column 'channel' refers to these%linkPerfTables.channelFiles(1).name = 'vehALinkPerfTablesNew';channelFiles(2).name = 'pedALinkPerfTablesNew';channelFiles(3).name = 'twoTapLinkPerfTables';

%%%%%% coverage probability calculation, test probe definition %%%%%%%wideAreaCovR = 8000; % bits/swideAreaCovSpeed = 50; % km/hwideAreaCovMsTxMax = 21; % dBm

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% common channel related %%%%%%%%%%%%%%%%maxCPICHPower = 30; % dBmCPICHPowerSwitch = 3; % 1 for fixed power CPICH

% 2 for changing power according to UL% load% 3 CPICH powers read from BS-file (for% mixed cells)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%LC related %%%%%%%%%%%%%%%%%%%%%%%%%%%%loadControlSwitch = 3; % 1 for random choose of the MSs to be

% thrown out% 2 for MS with highest TX power at% highly loaded cells to be thrown out% 3 for random chose of MSs at highly% loaded cells

reducePowerSwitch = 2; % 1 not used anymore% 2 take randomly MSs out until BS TX% power is small enough% 3 take high power MSs out until BS TX% power is small enough% 4 take low power MSs out until BS TX% power is small enough

%%%%%%%%%%%%%%%%%%%%%% Common channel analysis %%%%%%%%%%%%%%%%%%%%%%CPICHEcIoThreshold = -18; % default dB threshold for

% Ec/Io(wideband Io) for being% able to measure CPICH channel

bchEbNo = 5; % Average Eb/No for the BCH channel

Page 28: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

28 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

bchCpichOffset = 5; % difference in power between BCH and% CPICH in dB

bchBitRate = 12300; % bits/s

%%%%%%%%%%%%%%%%%%%%% Downlink power allocation %%%%%%%%%%%%%%%%%%%%%limitDLPowerSwitch = 1; % 0: no limit for link powers in DLpTxDLAbsMin = -999; % Maximum power per link in DL (dBm)

% 'soft' limit – not used -> -999

%%%%%%%%%%%%%%%%%%%%%%%%%%% hard blocking %%%%%%%%%%%%%%%%%%%%%%%%%%hardBlocking = 0; % 0: no hard blocking used, 1: hard

% blocking usedbasestationChannels = 172; % number of CHE in the base station

% pool

%%%%%%%%%%%%%%%%%%%%%%%%% Simulation mode %%%%%%%%%%%%%%%%%%%%%%%%%%%mode = 1; % 1: 2 Carriers

% 2: 2 OperatorsdoInitialCarrierSelection = 1; % If mode == 1 and this parameter is 1

% it is checked before the iteration% whether the MS can hear the CPICH% channel on the carrier indicated in% the MS file. If not, a carrier re-% selection is made if the second% carrier can be heard.

%%%%%%%%%%%%%%%%%%%%%%%%%% MS order method %%%%%%%%%%%%%%%%%%%%%%%%%%%for random MS selection from the MS filerandomizeMSfile = 0;usePrevRandStateInMsRead = 0;msReadDefRandState = 111;

Figure 3.2. An example for the npswini.m-routine setting global parameters.

3.1.3 Setting the map parameters - mapini.m

The geographical properties of the network area are initialised by the function mapini.m. The parameters set by this routine are: • xmax, xmin, ymax and ymin

The maximum dimensions of the network in m. The network area consists of a rectangular area between [xmin ... xmax] and [ymin ... ymax].

• area Vector holding above dimensions.

• resolution All the locations in the network are mapped to a grid where the distance between neighbouring pixels is specified by resolution.

• lossData In case the propagation data is imported, lossData is a temporary array of structures which holds the imported data per base station. For exact format see Section 3.3.3.1. In other cases, the value is set to the empty matrix.

Page 29: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 29

npsw 5.0.0 1.7.2001

• vectMap In case the propagation data is imported and vector information has been available, this variable is used to store it. For exact format see Section 3.3.3.1. In other cases, the value is set to the empty matrix.

An example for mapini.m can be seen in Figure 3.3.

%MAPINI MAPINI defines the map parameters%%Inputs:%Outputs:%%Authors: Achim Wacker (AWa), Kari Heiska (KHe), Kari Sipilä (KSi)%%Revision: 5.0.0 Date: 01-Jan-2001%%needed m-files: none

%define "network"-area

if ((pathlossModel == 7) | (pathlossModel == 8)) % import caseif (~exist('mapFile'))

mapFile = [];endif (~exist('waterAreaFile'))

waterAreaFile = [];end

eval(['load ', linklossFile]); % loads the linkloss-dataeval(['lossData = ', linklossFile,';']);eval(['clear ', linklossFile]);resolution = lossData(1).resolution; % metersarea = lossData(1).area;if (pathlossModel == 8)

eval(['load ', vectFile]); % loads the building vector infoeval(['vectMap = ', vectFile,';']);eval(['clear ', vectFile]);

elsevectMap = [];

endelse

resolution = 100;area = [-6500 8000 -6500 6500]; % meterslossData = [];vectMap = [];

endxmin = area(1);xmax = area(2);ymin = area(3);ymax = area(4);

Figure 3.3. An example for the mapini.m-routine setting the map parameters

Page 30: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

30 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

The maximum dimensions of the network area should be chosen in a way that of course all base stations are included. On the other hand there should not too much too much empty space around the base stations at the edge of the studied area. Violating this rule results in too big outage probabilities. Results of those areas are of course valid if they reflect the real situation, but should not be considered when collecting "typical" results. In such cases one should take only the results of the inner base stations.

Regarding the amount of memory needed, the resolution should not be set to too small a value.

3.2 Data files

During the initialisation phase the information about the base stations, the mobile stations and the default network performance are created into arrays of structures called basestation, mobilestation and perf. The base station data can be changed before the real calculation starts. At the beginning, the perf structures hold just some more or less reasonable default values which will be updated during the iteration processes, which are described in more details in Chapters 5 and 6. The files for the mobile station and the base station data are plain ASCII text files where each line holds one set of data values for either a mobile or a base station. The names of the mobile station and the base station files are initialised by the npswini.m routine where they are stored in the variables • bsParamFile

for the base station data, • msParamFile

for the information about the mobile stations,

Since version 4.0.0 the default values for the performance structure perf are not read in anymore from a file. They are created using the function PerfDefault.m, thus the perfFile has become obsolete.

3.2.1 Base station data file

This file holds the data values describing the base stations. The data values include: • x- and y-coordinates in m, describing the location of the base station in the network. • Ground height and antenna height in m. Ground height is not used in the current

versions and can therefore be set to zero. The antenna height includes the site height. • The total maximum transmit power in dBm a base station is allowed to use for all

channels including traffic channels, CPICH channel and other common channels. • The physical maximum transmit power for a DTCH in dBm (txMaxPowerPerLink). • The physical minimum transmit power for a DTCH in dBm (txMinPowerPerLink). • If the maximum transmit power of a DTCH should be limited to less than its physical

maximum this parameter is used. It is given in dBm (pTxDLAbsMax). • The CPICH power in dBm, which is used if CPICHPowerSwitch is set to 3 in

npswini.m, otherwise ignored.

Page 31: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 31

npsw 5.0.0 1.7.2001

• A long-term average of the sum of all common channel transmit powers besides the CPICH channel power in dBm.

• The maximum transmit power per link for the reference RAB is specified by this parameter relative to the transmit power of the CPICH channel. The value is given in dB. Positive values mean that the maximum transmit power of the reference RAB is below the CPICH power (CPICHToRefRabOffset)

• Antenna type as a string. An antenna file with the same name and the extension “.ant” must exist! Figure 3.7 shows an example for an antenna file and its format.

• The antenna direction in degrees north to east (NTE). • The antenna tilt in degrees. Since version 4.0.0 the default type for the tilt is

mechanical. If electrical tilt is wanted, it has to be changed in AntPattern.m. • All the losses at the base station are collected to cable losses in dB. • The gain of a MHA in dB (0 if no MHA is in use). The MHA gain is used just to correct

the cable losses. In current version, the MHA is NOT used to correct the noise figure of the receive chain.

• The gain of a remote RF head for DL transmission in dB (0 if no RF head is in use). • The number of the channel type to be used for the whole coverage area of the base

station. The number is the running number n of the link performance table file name in npswini.m. In this connection for each pixel in the network area the closest BS determines the channel to be used. The channel is NOT updated during the iterations if the best server is changing,

• HO parameter WINDOW_ADD in dB determining the window below the strongest CPICH when a CPICH is added to the active set. This must be given as a negative value. It is a relative threshold and should not be mixed with IS-95 definition of T_ADD.

• The number of available carriers at the base station. In current version as default there should be 1 carrier per base station, because base stations having 2 carriers are defined as separate base stations. In later versions this could change and this parameter could be of use.

• usedCarr indicates the carrier the BS is using • The maximum UL load for a cell allowed from users of the own network. The name for

this parameter is excessLoadOwn. • The maximum UL load for a cell allowed coming from all users included in the

simulations, also from 2nd operator/carrier. The name for this parameter is excessLoadTotal.

Figure 3.4 shows an example for the base station data file. The heading line must be present in the file. One three-sectored and one omni site are listed.

Page 32: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

32 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

xPos yPos ground Height

ant Height

txMax Power

txMaxPower

PerLink

txMinPower

PerLink

pTxDL AbsMax

CPICHPower

common Channel

Other

CPiCH To

RefRabOffset

……

0 0 0 25 43 30 -999 60 30 30 7 ……

0 0 0 25 43 30 -999 60 30 30 7 ……

0 0 0 25 43 30 -999 60 30 30 7 ……

3000 0 0 25 43 30 -999 60 30 30 7 ……

… ……

ant

Type ant Dir

ant Tilt

cable Losses

mha Gain

rfHead Gain

channel windowADD

num Carr

used Carr

excess Load Own

excessLoad Total

65deg 90 0 3 0 0 1 -3 1 2 0.5 0.9

65deg 210 0 3 0 0 1 -3 1 1 0.5 0.9

65deg 330 0 3 0 0 1 -3 1 1 0.5 0.9

omni 90 0 3 0 0 1 -3 1 2 0.5 0.9

Figure 3.4. Example for the base station file. A 3-sectored site at (0,0) and an omni site at (3000, 0)

3.2.2 Mobile station data file

The data describing the mobile station/traffic distribution are stored in this file. The values include: • x- and y-coordinates in m, describing the location of the mobile station in the network. • Ground height and antenna height in m. Ground height is not used in the current

implementation and therefore is set to zero. MS antenna height is fixed to 1.5 m. • The maximum allowed transmit power for the mobile station in dBm. • The minimum transmit power the mobile station is able to transmit with in dBm. • The mobile station antenna gain in dBi. Not used in current versions, instead npswini.m

parameter mobilestationAntennaGain is used. • All the losses at the mobile station are collected into body losses. Note: This field is Not

used in current versions, instead npswini.m parameter mobilestationBodyLoss is used. • The data rate of the mobile in bits/s indicating the service the mobile is using in uplink. • The data rate of the mobile in bits/s indicating the service the mobile is using in

downlink. • The number of the carrier used by the mobile station. As default there should be carrier

1 or 2. The carrier can then be changed during UL and DL iteration (see Section 5.2). This field is also used to indicate the reason why MSs are going to outage. These are only valid for the last carrier change in the 2 carrier mode, since the reasons might have been different for the previous carrier changes. The reasons and their ID's are:

Page 33: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 33

npsw 5.0.0 1.7.2001

− no HW available at BS, i.e. hard blocking (usedCarr = -1) − maximum MS TX power is exceeded (usedCarr = -2) − maximum DL link power is exceeded (usedCarr = -3) − maximum total BS TX power is exceeded (usedCarr = -4) − uplink loading exceeded (usedCarr = -5) − required CPICH Ec/I0 not achieved (usedCarr = -6)

• The speed of the mobile station in km/h.

Figure 3.5 shows an example for the mobile station data file. For clarification, a heading line is inserted describing the values. This line however must not appear in the file. Only the first few mobile stations are listed.

xPos m

yPos m

ground.Height

m

ant. Height

m

max. TXPower dBm

min. TX PowerdBm

ant. GaindBi

body Losses

dB

bit rate UL bit/s

bit rate DL bit/s

used carrier

speed km/h

4357.35 -3743.93 0 1.5 21 -50 1.5 1.5 8000 8000 1 3

4980.77 -1075.43 0 1.5 21 -50 1.5 1.5 64000 64000 1 20

6119.38 -844.881 0 1.5 21 -50 1.5 1.5 64000 144000 1 50

1025.901 364.6458 0 1.5 21 -50 1.5 1.5 8000 8000 1 5

-3122.48 -3461.97 0 1.5 21 -50 1.5 1.5 8000 8000 1 7

……

Figure 3.5. Example for the mobile station data file

3.2.3 Default network performance

Since version 4.0.0 the script PerfDefault.m initialises the performance structure perf during the initialisation procedure according the number of base stations. The default performance structure holds then the initial performance of the network. For each base station there is following set of data values: The earlier used performance files and the script PerfRead.m became obsolete. • The other cell interference relative to the own cell interference, i. • The number of users, mUL, currently connected to a base station in UL. • The amount of additional connections due to SHO described by the SHO overhead

factor. • The average data rate, RUL, of all users currently connected to the base station. • The sensitivity of the base station in dBm. For starting the iteration there must be some

default values. After the iterations the values calculated during the iterations and post processing using the reference MS speed and bit rate will replace these initial values. They can be saved to a file using the routine PerfWrite.m.

Figure 3.6 shows an example for the script PerfDefault.m initialising the default network performance structure entries.

Page 34: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

34 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

%PERFDEFAULT DEFAULTPERF = PERFDEFAULT() returns a perf struct% having default parameters.%Inputs:% none%Outputs:% DEFAULTPERF: default perf struct%%Author : Achim Wacker (AWa)%%Revision: 5.0.0 Date: 02-Jan-2001%%needed m-files: none

function defaultPerf = PerfDefault()

defaultPerf.i = .55;defaultPerf.mUL = 30;defaultPerf.SHO = .30;defaultPerf.RUL = 32000;defaultPerf.covth = -110;

Figure 3.6. Example script PerfDefault.m initialising the default network performance

3.2.4 Antenna data files

For each antenna, which will be used, a corresponding antenna file has to exist. The antenna data files are storing information about the type, gain, and directional pattern of the antennas. The format seen in Figure 3.7 is used in the files.

………Gain17.0Horizontal0.0 0.01.0 0.02.0 0.13.0 0.2…360.0 0.0Vertical0.0 0.31.0 0.32.0 0.03.0 0.2…360.0 0.3………

Figure 3.7. Example for an antenna data file used in npsw

Page 35: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 35

npsw 5.0.0 1.7.2001

There are different sections in the file, each section starting with a heading line (e.g. Gain, Horizontal, Vertical etc.). There can be any number of sections in the file. The ones used in current version of npsw are the ones from Figure 3.7, i.e. Gain, Horizontal and Vertical. The gain is the gain in main lobe direction of the antenna in dBi. The horizontal and vertical patterns are stored as (alpha, value) pairs, where the value is the attenuation below the main lobe at angle alpha. Attenuation of angles which are in between two given values are interpolated linearly. In order to use a fast interpolation routine of Matlab, the angles should be equally spaced and in increasing order. The number of values is arbitrary. Other sections could contain information about the antenna, which is not needed in planning process directly (beamwidth, manufacturer, size or any comment), but they are omitted in the figure. If at least the three sections shown in Figure 3.7 are included in the given format, any manufacturer's files could be directly used. Additional present sections are disregarded.

3.3 Initialisation phase

In the initialisation phase of the program several processes are running successively. A flow chart of these processes can be seen in Figure 3.8.

Page 36: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

36 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

npswsys. mreads the system parameters

npswini. mreads the global parameters

mapini. minitialises the map parameters

display the main windowcreate the map grid

CreateLinkPerf.mload the link performance tables

initialise the reference service

BSread.mreads the base station parameters

UpdateChannelMatrices.massign each MS a channel type and

service specific link performance values

create default network performance

CreateLinklosses.mload antenna files and

load/calculate link losses

MSread.mreads the mobile station parameters

calculate deltaSensitivity(speed, service)

DistTraf.mcreate uniform distributed mobile stations

InitialiseIteration.minitialises UL/DL iterations

Combined UL/DL iteration

post processing

E N D

Figure 3.8. Flow chart of the initialisation phase

Page 37: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 37

npsw 5.0.0 1.7.2001

3.3.1 Setting all parameters

First, the initialisation scripts (npswsys.m, npswini.m and mapini.m) are executed to set all the needed parameters. After reading the map parameters, the map is created.

Then follows the loading of the link performance tables, which hold the Eb/N0 requirements of the links and the SHO gains dependent on the mobile station speed, data rate and the level difference of the first and second best link (see Chapter 4). Also the activity factors in uplink and downlink for the different services are found here. They are later in initialisation phase assigned to the MSs in the routine UpdateChannelMatrices.m.

The base station data is set from the file specified in bsParamFile by calling the function BSread.m. The values are written to an array of structures called basestation consisting of the fields

basestation(n).x basestation(n).y basestation(n).groundHeight basestation(n).antennaHeight basestation(n).txMaxPower basestation(n).txMaxPowerPerLink basestation(n).txMinPowerPerLink basestation(n).pTxDLAbsMax basestation(n).CPICHPower basestation(n).commonChannelOther basestation(n).CPICHToRefRabOffset basestation(n).antennaType basestation(n).antennaDir basestation(n).antennaTilt basestation(n).cableLosses basestation(n).mhaGain basestation(n).rfHeadGain basestation(n).channel basestation(n).WINDOW_ADD basestation(n).numCarr basestation(n).usedCarr basestation(n).excessLoadOwn basestation(n).excessLoadTotal

where n is the number of the base station in the network with n = [1..numBSs]. During the execution of the initialisation the fields basestation(n).antennaGain (read in from the antenna file) basestation(n).nameLong (used in the headings of displays) basestation(n).name (used in the displays)

and in case the hard blocking checking option is used also the fields basestation(n).channels (number of CHE in the site pool) basestation(n).site (a site Id)

are added. The DL iteration adds the field

Page 38: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

38 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

basestation(n).wideAreaCovEbNoDL. Next the routine PerfDefault.m is initialising the default values for the network

performance into an array of structures called perf holding following fields: perf(n).i perf(n).mUL perf(n).SHO perf(n).RUL perf(n).covth

where I is the other-cell-to-own-cell interference ratio (in UL), mUL is the number of simultaneous active users in UL, SHO is the SHO overhead factor (in DL), RUL is the average bit rate in UL and covth is the sensitivity of the base station. n is the running number of the perf structure with n = [1 ... numBSs].

During the execution the fields

perf(n).mDL perf(n).RDL perf(n).throughputUL perf(n).throughputDL

are added, which describe the number of users served in DL the average bit rate in DL and the throughput in UL and DL.

Last step in setting the initial data is done with the routine MSread.m initialising all the needed mobile station information from the file specified in msParamFile to an array of structures called mobilestation. Its fields are

mobilestation(n).x mobilestation(n).y mobilestation(n).groundHeight mobilestation(n).antennaHeight mobilestation(n).txMaxPower mobilestation(n).txMinPower mobilestation(n).antennaGain mobilestation(n).bodyLoss mobilestation(n).RUL mobilestation(n).RDL mobilestation(n).usedCarr mobilestation(n).speed

and n is the running number of the mobiles with n = [1...numMSs]. During the execution following fields are added (see Chapter 4)

mobilestation(n).channel mobilestation(n).EbNoUL mobilestation(n).EbNoDL mobilestation(n).txPowRaise mobilestation(n).headRoom

Page 39: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 39

npsw 5.0.0 1.7.2001

mobilestation(n).vUL mobilestation(n).vDL mobilestation(n).orthFactor mobilestation(n).txPower

where EbNoUL is the required MS Eb/N0 in UL, EbNoDL is the required MS Eb/N0 in DL, txPowRaise is the average MS TX power rise due to TPC in UL, headroom is the fast fading margin in UL and vUL is the activity factor in uplink, vDL is the activity factor in downlink orthFactor is the DL orthogonality of the channel txPower is the actual MS TX power.

Instead of reading the mobiles station information from a file, a new scenario of randomly distributed mobiles can be generated by calling the routine DistTraf.m. Current version uses a uniform distribution of mobile stations having default data values defined in DistTraf.m.

3.3.2 Editing the network layout

After initialisation of all the parameters is finished, the map window is displayed. An Example for the map window can be seen from Figure 3.9.

Figure 3.9. The main map window in npsw

Page 40: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

40 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Comparing to the normal Matlab figure window, the main map window shown in Figure 3.9 contains three additional menus, BS Options, Display users and Calculate.

With the menu Display users the initial user distribution can be displayed. If the network layout is OK, a click on Calculate menu resumes the program starting the calculations.

If changes to the network layout or existing BSs are required, a click on BS Options opens up the menu seen in Figure 3.10. It gives access to a sub menu to edit BSs. Editing BSs also includes creating new ones and saving all to a file. In case imported propagation data is used, the Add-option cannot be utilised because the propagation data of new BSs would have to be first calculated in the origin tool

Figure 3.10. The BS Options menu in npsw

3.3.2.1 Editing BSs After choosing Edit BS from the BS options menu, the window seen in Figure 3.11

appears. In its upper left corner one can see the number of the BS which is about to be edited (active BS). To change to another BS, the appropriate number has to be entered. Any parameter changes will take effect, as soon as the window is closed or click on any part inside the window happens or the <enter> button is pressed.

Also from this window one can add a new BS by pushing Create new BS button, but then the coordinates have to be entered manually. Entering them by clicking on the map is not possible. Selecting the appropriate carrier, the base station will be automatically added to the right carrier if in 2 carrier mode or to the right operator in the 2 operator mode. If the operator of a BS is changed from one to two or v.v., the basestation structure array is adjusted appropriately as well as the variables numBStype1, numBStype2, indBStype1 and indBStype2, i.e. the values from npswini.m are overridden.

In case imported propagation data is used, the Create new BS button is disabled. Also the location parameters cannot be edited. If imported antenna information should be used, also antenna parameters are disabled for changes.

Hitting the Save button before the window is closed will save the changed data values to a file. Note: The information will be saved to the file specified by bsParamFile.The original parameter file will be saved with the extension ‘.bak’. If such a file already exists it will be overwritten.

After closing this window selecting the Calculate menu will start the calculation.

Page 41: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 41

npsw 5.0.0 1.7.2001

Figure 3.11. The BS edit window of npsw

3.3.2.2 Graphical output After the calculations have been finished, the main window's menu will be replaced by the one seen in Figure 3.12.

Figure 3.12. The menu for post processing in npsw

The popup menu Display (Figure 3.13) gives access to the various graphical outputs described closer in Chapter 8.

Page 42: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

42 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 3.13. The display menu in npsw

3.3.2.3 Area coverage analysis Choosing the menu Area coverage will open the submenus seen in Figure 3.14, where the user can choose between analysing the coverage of the dedicated channels in up and/or downlink and/or the coverage of the P-CPICH and the P-CCPCH.

Figure 3.14. The menu for the area coverage analyses

The analysis will be performed with a default parameter set (choosing Calculate immediately) or the parameters can be freely changed by selecting Parameters… from either submenu. A window like in Figure 3.15 will be opened to enter/change the current parameters (the window may look slightly different depending on the channel to be analysed, see more in Chapter 8).

Page 43: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 43

npsw 5.0.0 1.7.2001

Figure 3.15. The npsw window for entering area coverage prediction parameters (here for UL and

DL DTCH)

3.3.2.4 Tracing a mobile station In addition to the graphical outputs there is the possibility to trace a mobile station on a selected route by choosing the menu MS Trace. A window similar than in Figure 3.15 will open to enter the tracking resolution and the number of traces and a map window opens to enter the route by mouse clicks. An example can be found from Section 8.19.

3.3.3 Calculations performed during initialisation

After the network layout has been fixed, the real calculation is started. First all the memory needed in the initialisation phase is pre-allocated. The correlating part of the slow fading is generated and the path loss from each map pixel to each base station is calculated or loaded according to the method specified in npswini.m and described in Section 3.3.3.1. The resulting path losses are checked versus the free space loss defined by

[ ]

⋅⋅⋅=

λπ '4log20 10

ddBfreeLoss (3.2)

where 22 .' ghtantennaHeinbasestatiodd += is the distance to the antenna in m and λ is the wavelength at the carrier frequency.

The bigger one of both is selected, ensuring that the sum of path loss and random generated slow fading cannot get less than the free space loss. To get the overall link losses, the losses in the base station and the mobile station as well as the antenna gains are added

Page 44: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

44 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

according Equation (3.3). The link losses in UL and DL are different because MHA and/or remote RF heads are implemented. They are calculated for uplink according Equation (3.3a) and for DL according Equation (3.3b)

( )

[ ]dBmhaGainiBSnantennaGaiMSbodyLossMSiantLoss

nantennaGaiiBSscableLosseiBSipathlossilinklossUL

).(..:):,,(

).().(::,,:):,,(−−+

+−+= (3.3a)

( )

[ ]dBrfHeadGainiBSnantennaGaiMSbodyLossMSiantLoss

nantennaGaiiBSscableLosseiBSipathlossilinklossDL

).(..:):,,(

).().(::,,:):,,(−−+

+−+= (3.3b)

where i is the running number of the base station, antLoss(i,:,:) is the loss due to the antenna radiation pattern in respect to the main lobe, (:,:) represents all the pixels in the network.

3.3.3.1 Calculation of the path loss, Lp Creating the path and link losses has been put to its own routine called CreateLinklosses.m. The path loss, Lp, in the tool is modelled as the sum of two logarithmic components, the average path loss, PL , and a log-normal distributed random variable, ζ, with zero mean and standard deviation of sigmaLogNorm.

[ ] [ ] [ ]dBdBLdBL pp ζ+= (3.4)

Several methods to calculate the average path loss have been implemented. They include • simple Okumura Hata and single slope models • UMTS models for Pedestrian and Vehicular_A channels • interface to commercial propagation calculation tools to import path/link loss data,

where the same interface can be used with other external propagation data calculators.

Average path loss, LP , simple Okumura Hata model For average path loss calculation, the current implementation is using the Okumura-Hata propagation model according [2] and [3]. No real map is underlayed and therefore the same area correction factor as specified in npswini.m is taken into account at each location. In addition, frequency correction, the base station height correction and the mobile station height correction terms are considered. The mobile station’s height and frequency have been fixed to hMS = 1.5 m and f = 2000 MHz. Effective height, rolly hilly correction and knife-edge diffraction are left out from the calculation. This reduces the average path loss calculation to:

[ ] ( ) ( )[ ] ( )dhhdBL BSBSP 101010 loglog55.69.44log820.13235.158 ⋅⋅−+⋅−= (3.5)

where hBS is the height of the BS in m, d is the distance between BS and MS in km.

Page 45: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 45

npsw 5.0.0 1.7.2001

For evaluation purposes also a single slope model (Equation (3.6)) and a OH model using the fixed parameter hBS = 30 m (Equation (3.7)) are implemented. Both of them result in the same type of formula, only difference is the different path loss slope.

[ ] ( )ddBLP 10log40866.136 ⋅+= (3.6)

[ ] ( )ddBLP 10log786.34866.136 ⋅+= (3.7)

In both equations d is again the distance between BS and MS in km, the antenna height from the base station structure is ignored in this case.

Average path loss, LP , UMTS models By the ETSI [9] several path loss models have been defined for use in evaluation of 3rd generation radio network. From these models, the equations for the Pedestrian_A, Equation (3.8), and the Vehicular_A channel, Equation (3.9), have been implemented.

[ ] ( ) ( )dfdBLP 1010 log40log3049 ⋅+⋅+= (3.8)

[ ] ( ) ( ) ( )( )deltaHb

ddeltaHbfdBLP

10

1010

log18log004.0140log2180

⋅−⋅⋅−⋅+⋅+=

(3.9)

where f is the frequency in MHz and, deltaHb is the height difference between the BS antenna and the mean building rooftop level, d is the distance between MS and BS in km

For deltaHb = 15 m and f = 2000 MHz Equation (3.9) reduces again to a single slope model:

[ ] ( )ddBLP 10log6.371.128 ⋅+= (3.10)

3.3.3.2 Importing pre-calculated link losses and digital maps to npsw To model the propagation environment more precisely an import feature has been implemented to npsw. With this import feature it is possible to utilise propagation models and maps of commercial propagation calculation tools (in the following called “RNP tool”) as e.g. NPS/X® or WinProp®. This chapter describes this interface between a RNP tool and npsw.

Link loss import to npsw For each BS that shall take part in the iterative analysis, the link loss to EACH pixel in the area of interest must be calculated and imported. The area must be the same for each BS! Format of the linklossFile: The import file for the link losses must contain link loss information needed in npsw. The link loss information is stored in the file given by the variable linklossFile in npswini.m. It contains one variable named lossData, which identifies an array of structures with the following members:

Page 46: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

46 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

totloss: [181x179 double] % linkloss datacorner: [386062 6674848] % lower lef corner of the area

area: [-534 534 -541 541] % area (in npsw-coordinates)txloc: [-281 368] % TX location (m, in npsw-coordinates)

resolution: 6 % pixel size (m)Ta: 7 % Tilt of the BS-antenna (downward °)Lc: 0 % Cable lossesBa: 1 % BS ant. bearing (deg. clockwise from

% north)Ga: 5 % BS ant. gain (dBi)Hg: 4 % Ground height (m) from the sea levelHa: 35 % Antenna height (m) from ground level

model: 0 % propagation model (0=O-H, 1=J-N,% 2=W-I, 3=ray tracing)

numBSs: 7 % number of cells in the plan

Figure 3.16. Format of the link loss data

A default base station file with the correct amount of base stations must already exist. Depending on the chosen option (useImportedAntennaInfo-flag, see Section 3.1.2 g). npsw updates the necessary parameters in the base station parameter file with the information from the link loss file.

Map import to npsw Just for visualisation purposes, 3 different map layers can be imported to npsw, which are a clutter type layer, one separate layer for water areas, and a vector layer representing buildings blocks. In Matlab they are simply represented by variables of matrix type. The clutter, water area and vector matrices are then saved in mat-file with selectable names. These filenames are to be given later in npswini.m (e.g. mapFile = 'helsinki1', waterAreaFile = ‘waterAreaHelsinki’, vectFile = ‘vector1’). Select in in npswini.m: pathlossModel = 7, if you don't have or you don't want to use the vector data or pathlossModel = 8, if you have and you want to use the vector-data. The vector data itself does not change the link loss data you have imported. It is just for visualization.

Clutter type layer: The clutter type layer is simply a matrix holding an integer value for each map pixel representing a specific clutter type. In the matrix, the columns represent the x-direction in the map and the rows represent the y-direction. The orientation of the y-direction however in the matrix is flipped. For exact orientation of the directions see Figure 3.17.

Digital clutter map Matlab matrix Y ↓ 1 3 2 1 4 1 4 1

Y ↑ 1 3 2 1 → X → X

Figure 3.17. Orientation in digital clutter map and Matlab matrix representation

Page 47: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 47

npsw 5.0.0 1.7.2001

The map file shall contain 2 variables. One is called digiMap, which holds above described clutter map, the other is a n*3 matrix called cMap, which is a Matlab color map, i.e. n represents the number of clutter types in the map and the 3 columns represent the RGB values of the colours used to display the map, normalised to one. The filename is arbitrary. Water area layer: The format for the water area layer is the same as above where the entry “1” represents a water pixel and the Matlab pseudo number “NaN” represent a pixel from other clutter type (see Figure 3.18). The variable name of the matrix holding the water area is waterArea, the file name can be any!

Water area in the map Matlab matrix … Y ↓ 1 NaN NaN 1 … 4 1 NaN 1 Y ↑ 1 3 2 1 … … → X → X

Figure 3.18. Example for water area layer, clutter type 1 represents water

Vector data: The vector information for building blocks is given in a matrix, which has the following format:

0 0 0 0x11 y11 x12 y12x12 y12 x13 y13

:x1n y1n x11 y11

0 0 0 0x21 y21 x22 y22x22 y22 x23 y23

:x2n y2n x21 y21

0 0 0 0:

0 0 0 0xm1 ym1 xm2 ym2xm2 ym2 xm3 ym3

:xmn ymn xm1 ym1

0 0 0 0

where xij = x-coordinate of the j-th corner from i-th building and yij = y-coordinate of the j-th corner from i-th building

Each row represents one wall of the building block. The buildings are separated from each other with zeros. The variable name of the matrix holding the vector data is vectMap, the file name can be any!

Page 48: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

48 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

3.3.3.3 Slow fading (shadow fading, log-normal fading), ζζζζ Slow fading or shadow fading is taken into account by overlaying the average path loss with a log-normal (Gaussian) distributed random variable, ζ, with zero mean and standard deviation of σ = sigmaLogNorm. The value for sigmaLogNorm depends on the area type, example values being σ = 5 dB for open area and σ = 6 to 8 dB for dense urban. In outdoor to indoor propagation the values of sigmalLogNorm have a wide range and can be found typically between 12 and up to 20 dB. The actual value of sigmalLogNorm is specified in npswini.m file.

When analysing the other-cell interference, modelling the path loss must take into account that the path losses from a user to two different base stations are not independent. Modelling the path loss as a Gaussian random variable, the path loss to different base stations is a joint Gaussian probability. In extension to a proposal made in [4], where the cross-correlation between two sites is constant over the network, an extended approach was implemented into npsw. The correlation of the path losses to two sectors of the same site can be selected higher than to sectors of two different sites. In this approach the path loss is modelled as a Gaussian random variable ζ, which is the sum of three independent random components.

The first part, ξ, is the same for all the sites, taking into account the “mobile station end” of the propagation path. The second and third part, ξi1 and ξi2 characterise the "base station end" of the propagation path. The second part is describing the amount, which is seen from all sectors at the same site and therefore is the same for all sectors of one site, but independent from site to site. The third part considers the part, which is completely random and therefore is independent from sector to sector. All three of the random components are assumed of having the same standard deviation and are weighted so by appropriate factors a, b and c, that the standard deviation of the sum signal is the same than for the single parts (σ). Therefore the slow fading ζ i to sector i is

21 iii cba ξξξζ ⋅+⋅+⋅= (3.11)

where a, b and c are chosen so, that

1222 =++ cba (3.12)

The expectations of the different parts of the slow fading are

( ) ( ) ( ) ( ) 021 ==== iii EEEE ξξξζ (3.13)

and their variances

( ) ( ) ( ) ( ) 221 σξξξζ ==== iii VarVarVarVar (3.14)

The correlation between the common and the individual parts and between either two different individual parts are assumed to be zero:

( ) ( ) ( ) ( )21;2,10,,, 2121 jijiEEE iiii ≠∀=== ξξξξξξ (3.15)

If the desired correlation coefficients of two propagation paths from a mobile station to two sectors at different sites is csite and to two sectors at the same site is csector it follows that

Page 49: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 49

npsw 5.0.0 1.7.2001

( ) siteji cEa == 22 , σζζ if i and j are sectors at different sites

( ) sectorjisite cEcb ==+ 22 , σζζ if i and j are sectors at the same site (3.16)

In the tool the values for csite and csector can be specified in npswini.m as siteCorr and

sectCorr. c is then calculated according to Equation (3.12).

3.3.3.4 Calculation of the antenna loss – sectorisation To include the impact of a non-isotropic antenna and to model the sectorisation, the losses due to the antenna radiation pattern in respect to the main lobe are added to the link losses. To model sectorisation simply a co-located site is added, i.e. different sectors are treated as different sites. The pattern is supposed to be given in 2 cuts, the values being the gain of the antenna in dB below the gain of the main lobe. First one is a horizontal cut, that is the vertical direction in 0°. The second cut is supposed to be given in vertical direction at the direction of the main lobe of the antenna and is called the vertical cut (see Figure 3.19).

horisontal cut

10

20

30

40

30

210

60

240

90

270

120

300

150

330

180 0

vertical cut

10

20

30

40

30

210

60

240

90

270

120

300

150

330

180 0

Figure 3.19. Example for antenna pattern of a 90° antenna in horizontal and vertical cut

The calculation of the losses due to the antenna file is done by estimating the horizontal and vertical angle of the position of the mobile station in respect to the antenna direction and tilt. According to these angles the horizontal and vertical losses from the two pattern cuts of the antenna file are added to give the antLosses. This is done in the routine AntPattern.m.

The angle in horizontal direction is called the azimuth ϕ and in vertical direction it is named as tilt ϑ . In both cuts the angle is increasing clockwise. Azimuth is the horizontal direction relative to the main lobe direction antennaDir and tilt is the vertical angle relative to the mechanical tilt antennaTilt (note that any electrical tilt must not be taken into account here if it is already included in the vertical pattern in the antenna file. Only additional electrical tilt is allowed).

Figure 3.20 explains the different angles used in the calculations.

Page 50: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

50 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

antennaTilt

α

β

ϕ

θ

north

antennaDir

BS

MS location

Figure 3.20. The scenario for calculating azimuth and tilt

Calculating the azimuth Azimuth ϕ is determined by the direction of the mobile location relative to the horizontal main lobe direction, i.e.

antennaDir−=αϕ (3.17)

where α is the direction of the MS to the BS, antennaDir is the horizontal direction of the main lobe of the antenna, both measured relative to north direction from the base station. The angle α is given by

−−

−°=xnbasestatiolocationynbasestatiolocation

x

y

.

.arctan90α (3.18)

Calculating the tilt Tilt ϑ is determined by the angle between horizontal direction and the vertical height difference minus the mechanical down tilt

tantennaTil−= βϑ (3.19)

where β is the vertical angle between BS and MS antenna and antennaTilt is the down tilt of the antenna additional to the in-built electrical tilt, both measured relative to horizontal direction from the base station.

In case of electrically tilted antenna, antennaTilt is constant for all azimuth angles ϕ. If the antenna is mechanically tilted, the tilt angle antennaTilt is dependent also from the azimuth angle ϕ according to Equation (3.20))

( ) ( )mechTiltmechTilttantennaTil tancosarctan, ⋅= ϕϕ (3.20)

The angle β is given by

−−

−°=xnbasestatiolocationynbasestatiolocation

x

y

.

.arctan90α (3.21)

Page 51: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 51

npsw 5.0.0 1.7.2001

where bs and ms are the base station and the mobile station structures. The loss in antenna gain when not transmitting in main lobe direction is given as the

sum of the loss due to horizontal offset and due to vertical offset

[ ]dBverLosshorLossantLoss += (3.22)

where

( )αCuthorizontalhorLoss = (3.23)

( )ϑtverticalCuverLoss = (3.24)

3.3.4 Calculation of the best server

For calculation of the best server we first need to define what is to be understood by the best server. Best server is that base station which fulfils a certain quality criteria best. Several possible definitions, which can be applied, exist and are described in the following chapters. In case 2 operators are analysed, best servers are calculated for each of them separately and the right one is then chosen dependent to which a MS is belonging.

3.3.4.1 Best server according to the received CPICH signal strength This method is used only in DL when estimating the SHO. It is the “real” best server in the strict sense, meaning it is that base station whose CPICH is received at a certain position with the highest level, taking into account all the gains and losses for the whole path between base station transmitters and mobile station receiver. It also allows that different base stations are transmitting with different CPICH powers. No loading of the cells, however, is taken into account. It can be included by adjusting the CPICH power with the UL and/or DL loading.

For estimating the best server in DL npsw uses this method. It is calculated in the module BestServerDL.m. In current version of npsw following 3 sub-methods are implemented for setting the CPICH power: • CPICHPowerSwitch := 1:

All base stations are using the maximum CPICH power defined in npswini.m by maxCPICHPower (this method is actually the same as described in Section 3.3.4.3).

• CPICHPowerSwitch := 2: The loading is taken into account. The base station, which has the highest sensitivity, is assigned the maximum CPICH power defined in npswini.m by maxCPICHPower. The CPICH powers of the other base stations then are corrected with the difference in sensitivity of that base station to the maximum sensitivity:

( )[ ]covthperfcovthiperfwermaxCPICHpoCPICHpoweri .min).( −−= (3.25)

where perf(i).covth is the sensitivity of BS i and min(perf.covth) is the best sensitivity. • CPICHPowerSwitch := 3:

The CPICH power is taken from the base station data file without adjusting by the UL load. This is to be used with mixed cell networks.

Page 52: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

52 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

3.3.4.2 Best server based on minimum TX power needed by the MS Here is determined, to which base station the mobile station has to transmit with the minimum power. This definition is used in UL iteration when calculating the best and second best server. The minimum needed transmit power is defined by

( ) ( ) ( )[ ]xyilinklossULcovthiperfxyminTxPower ,,.min, += (3.26)

where perf(i).covth is the sensitivity of BS i in dBm, (y,x) is the location of the mobile, linklossUL(i,y,x) is the link loss from position (y,x) to BS i in dB, i = 1…numBSs;

In addition to the normal link losses, the current loading of the network is taken into account via the sensitivities of the base stations calculated in the RLB. The sensitivity of a base station is the higher, the less the network is loaded. It receives less interference, allowing the mobile stations to transmit with less power to achieve a required C/I at that base station.

In the further document this is called the best server in UL direction and it is calculated in the module BestServerUL.m.

3.3.4.3 Best server based on minimum path loss With this method is determined to which base station the path loss is minimum. This method is only indirectly implemented when using CPICHPowerSwitch := 1 in the method described in Section 3.3.4.1. In a tool, the path loss is known and the minimum can be easily found. The mobile station has to estimate it. It gets broadcast the post-corrected transmit power of the CPICH channel. The post-corrected transmit power is the effective power which is leaving the antenna i.e.

antTX GlossesPtedTxPowerpostcorrec +−= (3.27)

where PTX is the CPICH channel power leaving the transmitter, losses is all the cable and combiner losses up to the antenna and Gant is the gain of the antenna.

The mobile station measures the received power level and calculates the path loss as the difference between the post-corrected transmit power and the received power.

werreceivedPotedTxPowerpostcorrecpathloss −= (3.28)

Possible different transmit powers of the CPICH channels are therefore not included in the decision of where a mobile connects to. Additionally to the path loss, the UL and/or DL interference can be taken into account, reflecting the loading of the network. The path loss is then simply corrected by the measured interference. Additionally, UL and DL interference can be weighted differently.

3.4 Loading the link performance tables

The needed Eb/N0’s for MS in transmit and receive direction (EbNoUL, EbNoDL), the average power rise, the needed headroom due to TPC in UL and the gain in SHO depend on the data rate used, the mobile speed and the link level difference of SHO connections have been obtained by interference studies, link level simulations and diversity handover studies

Page 53: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 53

npsw 5.0.0 1.7.2001

(e.g. [10], [11], [12] and [13]) and collected to link performance tables. The routine CreateLinkPerf.m reads in the tables for all available channels. For each MS then the values are taken from the tables of the channel type its using by the routine UpdateChannelMatrices.m. The channel type is determined from the channel type of the best server in DL. Values in between table values are interpolated. Also the service specific activity factor and the channel orthogonality dependent on the speed can be found in these files. More detailed description can be found in Chapter 4.

3.5 Calculating deltaSensitivity

For calculating the sensitivities of the base stations the data rate of the connections has to be taken into account. If this is not the same for all connections at one base station, the resulting sensitivity is not correct. The sensitivity in the RlbUL.m is calculated using a reference wideAreaCovR as the data rate and reference wideAreaCovEbNo as the Eb/N0 requirement, interpolated in CalcMsEbNoUL.m with wideAreaCovSpeed and wideAreaCovR as input. The needed transmit powers of the mobiles are calculated with these parameters. If a MS is using a different data rate RUL or has a different EbNoUL requirement due to a different speed or channel, its transmit power will be adjusted by the deltaSensitivity defined by Equation (3.29). This adjustment is later used in the uplink iteration. For details see Section 5.6.

( ) [ ]( ) ( ) ( )[ ] ( )

⋅⋅

+⋅

⋅⋅

+⋅=

.RULiionmobilestat.EbNoULiionmobilestatlog2linivULWivUL

vRwideAreaCovEbNowideAreaColog2linvULWvUL

lin2logdBitivitydeltaSensi1

)(1

(3.29)

where W is the chip rate, vUL(i) is the activity factor in UL of MS i, vUL is the activity factor in UL of the reference RAB, wideAreaEbNo is the Eb/N0 of the reference RAB. It is interpolated in CalcMsEbNoUL.m using, wideAreaCovR and wideAreaCovSpeed which are the reference data rate and the speed applied for calculating the sensitivity for the "wide area". mobilestation(i).EbNoUL is the MS Eb/N0 in UL and mobilestation(i).RUL is the data rate of the mobile i in UL.

3.6 Initialise UL and DL iterations

The final step in the initialisation phase is to call the function InitialiseIteration.m. where the actual iterations are initialised. In there first the memory needed in the UL/DL iterations and the CPICH powers are allocated (CPICHPowerAlloc.m). Initial values for mobile station sensitivities (RlbDL.m), best servers in DL (BestServerDL.m), CPICH Ec/I0 (CalcEcIoM.m) are generated. If desired (doInitialCarrierSelection = 1), a channel reselection can be done in the 2 carrier mode if the mobile cannot receive the CPICH of the initially assigned carrier with good enough Ec/I0 (InitialCarrierSelection.m). Finally, the SHO situation is evaluated and active set determined (CalcSHO2.m), then the initial link powers are assigned (BStxPowAlloc.m) and the target C/I of the mobile stations is set.

Page 54: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

54 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

4 Implementation of Link Level Simulation Results into npsw To model the link level requirements of different services in different multipath channel conditions five types of link level simulation results are brought to npsw: average received Eb/N0 requirement, average power rise, multipath fading margin (power control headroom), diversity combining gain in SHO and orthogonality. These concepts are shortly described in the Sections 4.1-4.5 below. The actual implementation is explained in Sections 4.6 and 4.7. For a more detailed discussion, see e.g. [10], [11], [12] and [13].

4.1 Received Eb/N0

From the network planning point of view the most important outputs from link level simulations are the average received Eb/N0 (bit energy to noise density ratio averaged over multipath fading) requirements of different services in different multipath channel conditions. In WCDMA the interference is noise like and noise, N0, can usually be replaced by I0, the interference+noise density. Thus, if the Eb/N0 requirement, the interference situation and the channel conditions are known the minimal required average received power for a radio connection between the BS and the MS can be calculated.

4.2 Average power rise

In systems with slow power control it is enough to take different channels into account just by using different requirements for the average received Eb/N0. In the case of fast power control (PC) and slowly moving MSs the average received Eb/N0 requirement is low, even for badly fading channels, because fast PC is able to keep the received power stable. However, the cost is that the transmit powers vary a lot causing a rise of the average interference experienced by other users. This is modelled in npsw uplink so that an average

Page 55: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 55

npsw 5.0.0 1.7.2001

transmit power rise is added to MS transmit powers and this is used when calculating the other cell interference (IothUL). Own cell interference is based on received Eb/N0.

In downlink average transmit power rise affects to all interference since the DL transmit power is controlled according to MS locations and MS's are located in different positions. This means that in downlink it is sufficient to use only one Eb/N0 which is the "transmitted Eb/N0" including already the average power rise. Notice that in downlink the Eb/N0 is going hand in hand with the orthogonality factor, section 4.5.

4.3 Multipath fading margin

When checking whether or not there is enough transmit power for a mobile connection in uplink it is not enough just to add the linkloss to the required average received power. The reason is the same as in the Section 4.2 above. For slowly moving mobiles the low received power requirement is based on the fact that power control is able to compensate the fading dips. Therefore a margin is needed above the average transmit power. This is calculated in npsw by taking into account a speed dependent multipath fading margin when checking outage. In [10] it is explained how this margin is determined from link level simulations. Currently the fading margin is implemented only in uplink.

4.4 Diversity combining gain in SHO

At least two kinds of SHO gains in uplink have been discussed in literature. First one is the SHO gain against shadow fading. This is roughly the gain of a handover algorithm, where the best BS can always be chosen, based on minimal transmit power of MS, against a hard handover algorithm based on geometrical distance. No additional calculations are needed in npsw to model this type of a gain because best server is always chosen, see Section 3.3.4.2.

Another soft handover gain is the diversity combining gain. First, this means that when the SHO links are nearly equally strong the average Eb/N0 requirement at receiver can be made a little lower, because in uplink the best frame is chosen from all the radio links involved and in downlink (also in uplink softer HO) all the RAKE fingers from all cells in the active set are combined. Also the average power rise (Section 4.2) is lower and so is the required fading margin (Section 4.3). All these are modelled in npsw by calculating the gains as a function of MS speed and the level difference between the two strongest links. Softer handover gain is not modelled separately in npsw. Different gains are used against uplink received Eb/N0, uplink average power rise and uplink fading margin. In downlink only the gain against average received Eb/N0 including average power rise is used. Notice that in DL there is another gain which comes from the fact that in SHO there are more than one transmitter involved. I.e., because in SHO the transmit powers of different base stations are equal, the transmit power of one base station is roughly half of the transmit power without SHO, but just in the case that the SHO links are equally strong at receiver. Still, the total transmit power is the same. If the other SHO link is clearly weaker at the receiver there is actually loss in the required total transmit power. This type of load sharing gain is modelled naturally in npsw because all the SHO links are MRC combined.

Page 56: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

56 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

4.5 Orthogonality

Together with Eb/N0 the orthogonality factor defines the DL link performance in npsw. The orthogonality tells the proportion of the power received from the serving BS that can be reduced due to orthogonal codes when calculating the C/I of the radio link. When orthogonality factor is 1 there is no interference from the serving cell and this is only if there is no multipath propagation. Orthogonality factor of 0.5 means that half of the power received from serving BS is interference in the receiver. This would be the case if there would be two strictly equally strong multipaths. (If the multipaths are fading independently the orthogonality for the two tap case is higher.). Notice that in npsw orthogonality and Eb/N0 could be set independently. However they are not independent but usually if one changes the other one changes as well.

4.6 Link performance tables

The information from link level simulation results is brought to npsw via so called link performance tables. In these tables the most important numbers are the Eb/N0 requirements for the used services and for chosen MS speeds, both in uplink and downlink and the orthogonality factor in DL. The numbers in the tables depend on the channel profiles and different tables should be generated for different channel profiles. The tables are presented typically in the files *LinkPerfTables.m, where '*' refers to the modelled channel. In the same file there are also the required multipath fading margins (headroom) in uplink above the received Eb/N0 as well as the average transmit power rise, as a function of MS speed. These are measured in dB above the average received Eb/N0. The SHO diversity combining gains have been tabulated in uplink and downlink as a function of MS speed and the level difference between two best links. In addition to these parameters the effective channel activity used in interference calculations is set in link performance tables.

Currently the tables have been generated for three different channels, Pedestrian A and Vehicular A of the ITU recommendations [7] and for the "two equally strong Rayleigh taps" -channel. Notice that the link performance tables are not stable but new values should be used always when there is more information from the requirements in standard, from the link level simulations and finally from measurements.

A multipath channel is chosen for each cell by giving a number in the BS input file, see Section 3.2.1. This number refers to an element of the channelFiles array defined in npswini.m. In the channelFiles array the elements are the names of the files containing the used link performance tables. Before the iteration a multipath channel is chosen to each pixel where a mobile is located according to BS with minimum link loss to the pixel. Then a multipath channel is given to each MS together with the link performance descriptors of the mobilestation structure. This is done in subroutine UpdateChannelMatrices.m. The channel assignment is redone after each IF HO has taken place. After the iterations have converged a multipath channel is assigned to each pixel in the network by calling CreateChannelMap.m which is needed to evaluate area based network performance.

As an example the contents of the Pedestrian A tables are presented in Figure 4.1.

Page 57: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 57

npsw 5.0.0 1.7.2001

% Used bit rates (64k, 144k, 512k packet data)linkPerfTables.bitRates = [8000 12200 64000 144000 512000];

%Voice activity factors for the different bit rateslinkPerfTables.vUL = [0.67 0.67 1.0 1.0 1.0]; %in uplinklinkPerfTables.vDL = [0.67 0.67 1.0 1.0 1.0]; %in downlink

% Specified speeds. Other speeds will be interpolated.linkPerfTables.speeds = [3 20 120];

% Specified orthogonalities.linkPerfTables.orthogonality = [0.9 0.8 0.7];

% Rows: specified bit rates - Columns: specified speeds% Dimensions must match to dimensions of linkPerfTables.bitRates and% linkPerfTables.speeds.linkPerfTables.EbNoUL = [5.0 6.0 6.6;

4.0 5.0 5.6;2.5 3.5 4.1;2.0 3.0 3.6;1.5 2.5 3.1];

linkPerfTables.EbNoDL = [12.0 10.5 9.0;11.0 9.5 8.0;9.5 8.0 7.0;8.5 7.0 6.5;8.0 6.5 6.0];

linkPerfTables.AvPRUL = [2.1 1.6 0.2];

linkPerfTables.HRUL = [8.2 3.7 0.2];

linkPerfTables.shoDifferences = [0 3 6 10]';

linkPerfTables.RxPowSHOgainUL = [1.55 1.65 1.31; % 0dB diff0.7 0.79 0.14; % 3dB diff0.3 0.25 0.14; % 6dB diff0.05 0.03 0.00]; %10dB

linkPerfTables.TxPowSHOgainUL = [2.68 2.39 1.34; % 0dB diff1.43 1.21 0.14; % 3dB diff0.64 0.46 0.14; % 6dB diff0.13 0.06 0.00]; %10dB

linkPerfTables.HRSHOgainUL = [4.5 3.2 1.50; % 0dB diff2.9 1.7 0.50; % 3dB diff1.8 0.8 0.10; % 6dB diff0.8 0.0 0.00]; %10dB

linkPerfTables.TxPowSHOgainDL = [3.3 3.0 1.0; % 0dB diff2.8 2.5 0.7; % 3dB diff1.8 1.5 0.4; % 6dB diff0.6 0.3 0.1]; %10dB diff

Figure 4.1. The pedALinkPerfTables.m routine of npsw

Page 58: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

58 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

4.7 The functions related to link performance tables

The following functions of npsw are related to bringing information from the link performance tables to the npsw engine: • CalcVoiceActivityUL.m

calculates the UL channel activity factor as a function of MS UL bit rate. The closest bit rate in the corresponding link performance table is chosen. The function is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.vUL. The function is called also in BestServerULArea.m.

• CalcVoiceActivityDL.m calculates the DL channel activity factor as a function of MS DL bit rate. The closest bit rate in the corresponding link performance table is chosen. The function is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.vDL.

• CalcMsEbNoUL.m calculates the uplink Eb/N0 requirement as a function of MS speed and bit rate. The speeds not in the link performance tables are interpolated linearly, closest bit rate is chosen. The function is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.EbNoUL. It is also used in BestServerULArea.m.

• CalcMsEbNoDL.m calculates the downlink Eb/N0 requirement as a function of MS speed and bit rate. The speeds not in the link performance tables are interpolated linearly, closest bit rate is chosen. The function is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.EbNoDL. The function is also called in CalcCovPDL.m and in ReduceBSTxPower.m.

• CalcOrthogonality.m calculates the downlink orthogonality as a function of MS speed. The speeds not in the link performance tables are interpolated linearly. The function is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.orthFactor. The function is also called in all downlink area coverage calculation routines.

• CalcMsHeadRoom.m calculates the power control headroom required above the average received Eb/N0, because of multipath fading. This is a function of MS speed only. The speeds not in the link performance tables are interpolated linearly. The script is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.headRoom. The headRoom is currently used only in uplink, in CalcMStx.m and in BestServerULArea.m, when checking whether or not a mobile station has enough transmit power.

• CalcMsTxPowRaise.m calculates the average power rise for a mobile station with a certain speed. The speeds not in link performance tables are interpolated linearly. The function is called in UpdateChannelMatrices.m and the result is stored to the field mobilestation.txPowRaise. This is currently used only in uplink, in CalcMStx.m, and it effectively increases the other cell interference.

Page 59: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 59

npsw 5.0.0 1.7.2001

• CalcShoGain.m Calculates the SHO diversity combining gain as a function of MS speed and difference between the strongest and the second strongest link, deltaSHO. If the MS speed is between the tabulated speeds in the link performance tables and if deltaSHO is between the tabulated SHO differences, the gain is interpolated linearly in both dimensions. If SHO difference is higher than the highest tabulated difference, SHO gain is put to zero. There are four types of use of this function. With the switch type:=1 the gain is calculated with respect to the average uplink received power, as reducing the own cell interference. If type:=2 the gain is calculated against average uplink transmitted power, as reducing the other cell interference. SHO gain with type:=3 is used against the uplink required peak power when checking the outage. The type:=4, is used for calculating diversity combining gain in downlink. CalcShoGain.m is used in uplink in the scripts CalcMStx.m and BestServerULArea.m, see Sections 5.6 and 5.8, and in downlink in the scripts CalcCovPDL.m and CalcMsSHOGainsDL.m. (Note: type is not a user parameter but a switch needed by npsw internally.)

Page 60: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

60 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

5 Detailed Uplink Iteration Step The main enhancements in npsw 2.0.0 uplink compared to the version 1.0.0 were: • The real service and speed of the mobile stations in uplink iteration are used in

assigning their transmit powers. This makes it possible to study mixed traffic cases more accurately.

• A multipath fading model is implemented by importing the results of link level simulations as look-up tables. For example the effects of the fast power control on the network can be quickly studied as a function of mobile station speed.

• A SHO selection combining model at the base station end is included. Already in the previous version the so-called "SHO gain against shadow fading" was achieved in downlink because the best server was chosen based on minimum transmitted power. In the current version the combining gains are calculated as a function of difference between the best and the second best server in uplink.

• Area coverage probability can be calculated after uplink iteration for different services and MS speeds, without another iteration. This is however accurate only for low bit rate services, but still it gives an idea what would happen with high bit rates.

The main enhancements in npsw 3.0.0 uplink compared to the version 2.0.0 are: • the uplink iteration is made about ten times faster by further vectorisation and by

removing the handling of maps during the iteration, where only the MSs and BSs are needed.

• the possibility for checking the hard blocking as described in Section 5.3 has been added

The main enhancements in npsw 4.0.0 uplink compared to the version 3.0.0 are: • in case of 2 operators present, the mutual interference is taken into account in

interference calculation. • new methods of reducing the load have been introduced

Page 61: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 61

npsw 5.0.0 1.7.2001

• cell based link performance tables are used meaning that each MS/pixel gets its own Eb/N0's and other link performance figures according to closest cell.

• memory usage and speed have been further optimised.

The main enhancements in npsw 5.0.0 uplink compared to the version 4.0.0 are: • UL and DL are merged, i.e. one UL iteration step is directly followed by on DL

iteration step. • Now one operator with two carriers or 2 operators on different frequencies supported. • In case of overload (to high noise rise or not sufficient MS TX power), for 2 carrier case

first user definable number of IF-HO are attempted before MS is put to outage. • In all cases now, MSs removed due to too high UL are indicated by usedCarr = -5.

This chapter describes the tasks performed in npsw when running one step taken in the detailed uplink analysis. In the uplink iteration the mobile station is connected to the best server as explained in Section 3.3.4.2. The initial mobile station transmit power is based on the UL link losses (losses from the mobile station location to the base station) and the sensitivity level of the base station (sensitivity level is output of the radio link budget, perf.covth). In the uplink iteration the base station sensitivity is estimated (RlbUL.m), the best server is chosen (in BestServerUL.m), mobile station transmit powers to the base stations are assigned (in CalcMStx.m) and the interference condition (i) estimated (in CalcIntUL.m).

Iteration after iteration during the analysis, loading situation is analysed and possibly reduced by first trying IF-HO if allowed and then adding another carrier. Also hard blocking is checked if wanted (RlbUL.m, ReduceLoad.m, DoSaattohoito.m, DoIFHO.m, CalcSiteLinks.m and ReduceLinks.m). The mobile stations are reassigned to a base station (a best server) (BestServerUL.m) based on minimum transmit power and new transmit powers are allocated based on the calculated interference, required Eb/N0 and used service (CalcMStx.m). If the required transmit power for a mobile station including the headroom is higher than the maximum transmit power, an outage counter is increased, and if the counter exceeds a limit given in npswini.m, the mobile station tries IF-HO if possible and if not is put to outage. After the DL iteration step the UL iteration step is repeated until the differences in all the old and the new base station sensitivities (output of RlbUL.m) are smaller than specified (limitCT), all the outage counters and loading are stable and the DL criteria have been fulfilled.

After the iteration the average bit rate and number of users in each cell is calculated (Calcm_RUL.m). Secondly, the best server, required mobile station transmit power and outage are calculated for each map pixel (BestServerULArea.m) assuming a reference Eb/N0 requirement and bit rate (wideAreaCovEbNo, wideAreaCovR). The wideAreaCovR is given in npswini.m and the wideAreaCovEbNo is calculated based on wideAreaCovR and wideAreaCovSpeed. Outage in a pixel means here that a mobile station in that pixel could not get the connection if the interference would be what it was after uplink iteration.

Only carriers 1 and – if existing – carrier 2 are taken into account in the analysis. In the final planning tool all allocated carriers should be analysed. A flow chart for the UL iteration step can be seen in Figure 5.1.

Page 62: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

62 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

set oldThresholds to thedefault/new coverage thresholds

RlbUL.mcalculate new coverage thresholds

ReduceLoad.m - DoIFHO.mDoSaattohoito.m

check UL loading and possibly moveMSs to new/other carrier or outage

CalcSiteLinks.m - ReduceLinks.mcheck hard blocking and possibly take

links out if too few HW resources

Evaluate UL break criterion

CalcMsTx.mcalculate adjusted MS TX powers,

check MSs for outage

CalcIntUL.mcalculate new i=Ioth/Iown

Flow chartUplink iteration step

BestServerUL.mConnect MSs to best server, calculateneeded MS TxPower and SHO gains

DL iteration step

no convergence

post processing

E N D

Initialisation

convergence

Figure 5.1. The flow chart for the tasks done in one UL iteration step in npsw

Page 63: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 63

npsw 5.0.0 1.7.2001

5.1 Radio link budget in uplink

The basics behind this section are presented in [6]. Note: Most of the equations are here in absolute units although many of them are in dB or dBm in the npsw code.

For simplicity the following derivation is performed with channel activity v=1. The inclusion of the channel activity can be found in the actual code.

To find out the required uplink transmitted and received signal power for a mobile station k connected to a particular base station, BSn, the basic WCDMA Eb/N0 equation is used. The usual, slightly theoretical, assumption is that Ioth, the interference received from the MSs connected to the other cells, is directly proportional (proportionality constant i) to Iown, the interference received from the MSs connected to the same BSn as the desired MS. Assume that the MS k uses bit rate Rk, its Eb/N0 requirement is ρk and the WCDMA chip rate is W. Then the received power of the k-th mobile, pk, at the base station it is connected to, must be at least such that

nkownkown

k

kothkown

k

kKk

NIipIp

RW

NIpIp

RW ,...,1, =≥

+⋅+−

⋅=

++−

⋅ ρ (5.1)

where Kn is the number of MSs connected to BSn and N=N0 ·W=Nf ·κ·T0·W is the noise power in the case of an empty cell with Nf being the receiver noise figure, κ the Boltzmann constant, T0 the absolute temperature and W the chip rate.

Note that in denominator of (5.1) the received power of the own signal is subtracted from the interference since Eb/N0 requirement ρk already includes the effect of multi-path interference from the own signal. Solving the inequalities (5.1), as equalities means solving for the minimum required received power (sensitivity), ρk:

( )

n

kk

own

kk

k

kkown

kkkkk

KkN

RW

Ii

RW

p

NW

RIiW

RW

Rp

,...,1,1

1)1(1

1

11

=⋅

⋅+

+⋅+⋅

⋅+

=

⇒⋅⋅

+⋅+⋅⋅

=

⋅+⋅

ρρ

ρρρ

(5.2)

If the Equations (5.2) are summed over the mobile stations connected to BSn then

( )

( )

+⋅−

+⋅⋅

=+⋅

⇒⋅

+⋅

+⋅=

∑∑

∑∑∑∑

= ⋅+

= ⋅+

=

= ⋅+== ⋅

+=

)1(1

)1(

1

1

1 1

1

1 1

1

1

1 1

1

11 1

1

1

i

iN

ip

Npip

N

kk

N

kkN

N

kk

N

kk

N

K

k RW

K

k RWK

kk

K

k RW

N

kk

K

k RW

K

kk

ρ

ρ

ρρ

(5.3)

Page 64: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

64 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

since ∑=

=NK

kkown pI

1

. By defining loading as

( )iN

kk

K

k RW +⋅=∑

= ⋅+

11 1

1

ρ

η (5.4)

one gets

( ) NipIIk

kothown ⋅−

=+⋅=+ ∑ ηη

11 (5.5)

and the single link equation for the sensitivity (5.2) becomes

( ) ( )ηηη

ρρρ −⋅+=⋅

++⋅

−⋅

+=

⋅⋅⋅ 1111

111

kkkkkk RW

RW

RWk

NNNp (5.6)

To have a positive solution to the link equation the loading, η, must be less than 1. On the other hand, if we want to calculate loading and we know Iown and Ioth we can use

the Equation (5.5) directly so that

NIIII

othown

othown

+++

=η (5.7)

Since npsw 4.0.0 the influence of the second operator is taken into account by replacing Ioth in Equation (5.7) by a term Ioth+IothOp, where IothOp is the interference received from the other operator’s network or from the other carrier of the first operator and IothOp is calculated according to Equation (5.29). The expression in Equation (5.7) is then renamed from η to ηown, so that now two loadings exist:

NIIIIII

othOpothown

othOpothown

+++++

=η (5.8)

and

NIIII

othown

othownown ++

+=η (5.9)

The loading factors (5.8) and (5.9) and Equation (5.6) for the sensitivity are used in uplink radio link budget during iterations of npsw. This is equivalent to calculating next iteration’s TX-powers from previous iteration’s interference. Notice that the value of (5.7) is never bigger than 1, but if the scenario is such that there is no solution to the system of Eb/N0 equations the received powers found from (5.6) start to increase without converging. After some iterations the transmit powers of some mobiles will exceed the maximum allowed and they will be put to outage. This will continue until the loading is low enough for convergence.

Page 65: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 65

npsw 5.0.0 1.7.2001

In decibel scale the loss in the radio link budget due to a certain loading η is

)1(log10 10 η−⋅=L (5.10)

The influence of the loading to the sensitivity of the base station can be seen in Figure 5.2. When the loading approaches to 100%, the losses grow very rapidly. With 90% of loading the loss is already 10 dB.

0

2

4

6

8

10

12

14

16

18

10 20 30 40 50 60 70 80 90 95 98

loading/%

loss

/dB

Figure 5.2. The loss in the RLB as a function of the cell loading

In npsw 1.0.0 the loading of a cell was defined as:

( )

( )iRW

m

+⋅⋅

−=

1

1

ρ

η (5.11)

where average bit rate and average Eb/N0 requirement of each cell were used in the place of R and ρ. m was the number of users in the cell. The sensitivity of a base station was calculated then by

( )ηρ

−⋅⋅

=1

RW

Np (5.12)

converted to dBm. This is accurate enough for low bit rates and if all mobiles are using the same service. Starting in npsw 2.0.0. the radio link budget was made more accurate. Since then (in RlbUL.m) the base station reference sensitivity (perf.covth) is calculated by

( )ηρ

−⋅

+=

11R

WNp

(5.13)

)1(log10 10 η−⋅=L

Page 66: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

66 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

converted to dBm scale, where η is the loading calculated from (5.7) at each iteration, R is the reference service's bit rate (in npsw called wideAreaCovR) and ρ is the reference service's Eb/N0 requirement (in npsw called wideAreaCovEbNo, which is calculated from wideAreaCovR and wideAreaCovSpeed given as parameters in npswini.m. (See Chapter 3).

The BS reference sensitivity, p, is corrected with factor: kk R

WR

W

++

ρ

ρ

11

. This term

corresponds to the real Eb/N0, mobilestation.EbNoUL , and R, mobilestation.RUL, when assigning the transmit power to the MSs, possibly using different services and moving with different speeds. This can be easily done because according to Equations (5.6) and (5.13)

ppkk R

WR

W

k ⋅+

+=

ρ

ρ

1

1 (5.14)

The factor kk R

WR

W

++

ρ

ρ

11

converted to decibels is called deltaSensitivity in npsw.m, it is

calculated for each MS in the initialisation phase (Section 3.5) and it is used in CalcMStx.m (Section 5.6).

wideAreaCov-parameters are important in calculating coverage, best server etc. over the

map area. In these cases it is assumed that the mobile station is moving wideAreaCovSpeed km/h using service with bit rate wideAreaCovR bits/s.

The iterative loop is needed to find minimal transmit powers of mobile stations so that

the system of inequalities (5.1) is solved. With a purely path loss based hard handover algorithm this could be done in closed form, in the case that the solution exists, but not in the case of a real handover algorithm, where it assumed that the best server based on minimum transmit power will be in the active set. Fortunately, it has been proven in [8] that a npsw type of iteration converges to the optimal solution of the Eb/N0 inequalities (5.1) if the solution exists. The possibility of non-existent solution is handled in npsw by putting MSs to outage if their transmit powers stay more iterations than specified above the maximum allowed transmit power.

5.2 Reducing the load

In the RlbUL.m, in the case of the own operator loading of a base station being higher than the parameter basestation.excessLoadOwn or if the total loading is higher than basestation. excessLoadTotal, the load is reduced by putting some mobile stations to another carrier in 2 carrier mode (DoIFHO.m). If the number carrier transitions exceeds limitIFHO, the MS put to outage permanently (DoSaattohoito.m). In 2 operator mode the mobile can only be put to outage. The ReduceLoad.m is only used in the radio link budget calculation. The main function of the ReduceLoad.m is to reduce the number of users until the loading is

Page 67: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 67

npsw 5.0.0 1.7.2001

acceptable. The loading is acceptable, if at all base stations the own loading is less than the own limit (UetaOwn(i) ≤ BS(i).excessLoadOwn) or the total loading is less than the total limit (Ueta(i) ≤ BS(i).excessLoadTotal). There are currently three strategies to reduce the load in npsw. • Strategy 1 (loadControlSwitch :=1):

If there is at least one BSi for which load limits are exceeded then the loading is reduced from the whole plan by putting to other carriers

%)max(

1100;)max(

1100;3max

−⋅

−⋅

UetaTotalexcessLoad

UetaOwnOwnexcessLoad (5.15)

randomly chosen mobile stations, not yet on other carriers.

• Strategy 2 (loadControlSwitch := 2): If there is at least one BSi for which either the own loading exceeds the own limit (UetaOwn(i) > BS(i).excessLoadOwn) or the total loading exceeds the total limit (Ueta(i) > BS(i).excessLoadTotal), then the loading is reduced from those BSs. This is done so that in each too-highly-loaded BS the mobile stations, whose best server is that particular base station, are sorted according to their transmitted powers. Then

%)max(

1100;)max(

1100;3max

−⋅

−⋅

UetaTotalexcessLoad

UetaOwnOwnexcessLoad (5.16)

of MSs connected to the BSi are put to other carriers, starting from the MSs with highest transmit power.

• Strategy 3 (loadControlSwitch := 3): If there is at least one BSi for which either the own loading exceeds the own limit (UetaOwn(i) > BS(i).excessLoadOwn) or the total loading exceeds the total limit (Ueta(i) > BS(i).excessLoadTotal, then the loading is reduced from those BSs. This is done so that in each too-highly-loaded BS the proportion

%)max(

1100;)max(

1100;3max

−⋅

−⋅

UetaTotalexcessLoad

UetaOwnOwnexcessLoad (5.17)

of randomly chosen MSs connected to the BSi are put to other carriers. The first strategy could be useful when trying to estimate the capacity of the network

with chosen (or operator given) assumption of spatial distribution of traffic so that the basic coverage requirements are met. The second strategy could imitate an aggressive admission control, which maximises capacity with the cost of quality (coverage). The third strategy is possibly the most realistic one.

In the end of ReduceLoad.m the loading of the all base stations is put to zero meaning effectively a new start of the uplink iteration.

Page 68: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

68 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

5.3 Checking for hard blocking

The hard blocking means the limitations due to physical channel cards in BS. In the case of several sector in one BS the channel cards of the sectors compose a CHU-pool. All mobiles, which are connected to one of the cells, can utilise any channel element of that pool.

A base station unit might have 6 CHU's in one sector each having capacity of 32 code channels. The sectors are connected with SMU (Switching Matrix Units) constructing a RAKE receiver pool. Therefore, the connection that has been allocated to one code channel in one sector can be in the same channel unit even if the mobile moves from the first sector to the adjacent sector. One cabinet can include e.g. up to 6 sectors and each cabinet can have up to e.g. 18 CHU-modules. Therefore, the maximum number of channels per sector is 6×32=192 channels/sector. The total RAKE-pool per cabinet is 18×32=576 channels. 16 channels per sector are for RACH processing and there fore the total number of data physical channels per BS cabinet is (3×(192-16)=528). These numbers are for the uplink, which is the limiting direction. For the downlink there are 6×48=288 channels/sector each having capacity of 128 kbps L1-data. Addition to the RAKE pool there is a Viterbi decoding pool which is 3×6×32×16 kbps=9216 kbps.

The resources of the linear power amplifier can be divided to 1 or 2 carriers but in the case of 2 carriers the maximum output power is decreased. For example in a 4+4+4 - BS configuration could be four carriers divided to two linear power amplifiers and the output power of each LPA is 10 W. When the 1+1+1 configuration is used we can have maximum power of 40 W.

5.3.1 Removing the links

The usage of hard blocking is controlled by the parameter hardBlocking in npswini.m. If hardBlocking = 0 the hardware does not limit the computation of links and if hardBlocking = 1 the maximum number of available physical channels (basestation.Channels) is used when computing the number of links. When it is observed that there are too many links in a RAKE-pool the additional links will be removed during the uplink iteration and all mobiles using those links are put to outage. The active uplink links has been computed in CalcActiveSet.m function when CPICHPowerSwitch = 3. If CPICHPowerSwitch is not 3 the hard blocking can not be used. The rake pool is assumed to include all the CHUs in the site. All the cells having equal coordinates are assumed to belong to one site. The number of channels per cell is copied to basestation structure (basestation(i).channels). Those cells of a site with too many uplink connections are computed in CalcSiteLinks.m in RlbUL.m. If the number of channels in a pool is exceeded the RlbUL.m calls ReduceLinks.m which removes the additional links if hardBlocking-variable in npswini.m file is 1. For every iteration the number of links N are compared to target value N'0 and if the number of links is larger then we compute the number of survived links per cell by (5.18)

1'0

'0 +⋅

−=

αN

NNNn

(5.18)

Page 69: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 69

npsw 5.0.0 1.7.2001

The parameter α gives the how fast the hard blocking will remove the links. The default value for parameter α is 0.5. The target number of links per site was computed by:

∑=

⋅= L

ii

i

N

NNN

1

00'

(5.19)

where Ni is the number of links per cell, N0 is the number of channels in the RAKE pool and L is the number of cells in the RAKE-pool.

So in the case where the traffic is non-uniformly distributed the target number of links per cell is different in different cells. If there are 200 and 300 users in one cell which have size of RAKE-pool 2×176=352 channels, the target number of links N0 in (5.18) is

links211300200

3001762

links141300200

2001762

=+

××

=+

××

(5.20)

5.4 Generating user and bit rate layers for the digital map

In CreateTraf.m the number of users on carrier 1 and/or 2 are recalculated. Only the mobile stations which have mobilestation.usedCarr == 1 and/or 2 are accepted to the user-layer of the map. The average bit rate per pixel datarate(yPos(k), xPos(k)) is also calculated with similar condition in CreateTraf.m. Since version 3.0.0 this is done after the iterations.

5.5 Choosing the best server

The function BestServerUL.m is used to find out to which BS the mobile stations should be connected so that transmit powers would be as small as possible. This is done for mobile station n, n=1,…,numMSs, by adding to the base station k sensitivities the link loss from mobile station n, to base station k i.e.,

),().(),( nkLlinklossMUcovthkperfnkPowerneededMsTx += (5.21)

The bestServer(n), of MS n is the BS index minimizing neededMsTxPower(k,n), i=1,…,numBSs. The minimum transmitted power is put to the vector msTxPower(n), n=1,…,numMSs. This is later corrected in CalcMStx.m to the real bit rate and Eb/N0 (see Section 5.6).

To estimate the SHO combining gain in uplink the level difference between the best and the second best server must be known. The level difference is calculated in BestServerUL.m as follows. In the matrix neededMsTxPower the value of the best server is put to 9999 for each mobile station and the minimum is again searched. The BS index minimising the new neededMsTxPower matrix is the second best server. The absolute value

Page 70: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

70 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

of the difference of the required transmit power to the best server and to the second best server is stored to the vector deltaSHO(n), n=1,…,numMSs and used later in CalcMStx.m.

Under normal operation of npsw the best server is chosen from the set of all base stations. In real life the uplink traffic channel transmit power is minimised only in the set of active base stations (active set) connected to the mobile station. In npsw 4.0.0 and earlier versions, in the case of CPICHPowerSwitch:=3, see Section 3.3.4.1, the choice of bestServer is done only in the active set. (This is a special case made for studying the possibility to make microcells by adjusting the CPICH power smaller). Since version 5.0.0 the best server is chosen always from within the active set only in any cases.

5.6 Assigning the transmit powers to the mobile station

CalcMStx.m is used to set the mobile station transmit powers in the mobile station structure, to increase an outage counter if the mobile station has not enough power. It also puts the mobile station to outage if its outage counter exceeds the parameter limitOutageUL or IF-HO counter exceeds limitIFHO, if IF-HO is allowed.

In BestServerUL.m the required average MS transmit powers msTxPower were calculated corresponding to wideAreaCovEbNo and wideAreaCovR. These are first adjusted with the deltaSensitivity and copied to txPowerBase.

tivitydeltaSensimsTxPoweretxPowerBas += (5.22)

Then msTxPower is recalculated by

SHOgainRxetxPowerBasmsTxPower −= (5.23)

The Equation (5.22) corrects the Eb/N0 requirement to the real Eb/N0 and bit rate used by the mobile stations. Also SHO gain is taken into account by Equation (5.23). deltaSensitivity has been calculated for each mobile station before the iteration started according to Equation (5.14). SHOgainRx is calculated by CalcShoGain.m, with the switch type:=1, see Section 5.1. CalcShoGain.m uses as input the mobile station speed and the level difference between the best server and the second best server, deltaSHO. msTxPower is used later in CalcIntUL.m, when calculating the own cell interference, IownUL.

A second transmit power is calculated for each MS which shows the average transmit power increase, see [10], i.e.

SHOgainTxtxPowRaiseionmobilestatetxPowerBasaisedmsTxPowerR −+= . (5.24)

Also here the SHO gain is taken into account and it is calculated by CalcShoGain.m, with the switch type:=2. mobilestation.txPowRaise depends on MS speed only, and it has been calculated in the initialisation phase. msTxPowerRaised is used later in CalcIntUL.m, when calculating the other cell interference, IothUL and the interference to the other operator IothOpUL.

To check whether or not the mobile stations have enough transmit power a third quantity is calculated for each mobile station which is

kSHOgainPeaheadRoomionmobilestatetxPowerBaseakmsTxPowerP −+= . (5.25)

Page 71: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 71

npsw 5.0.0 1.7.2001

As before, the SHO gain is calculated by CalcShoGain.m, but now with the switch type:=3. mobilestation.headRoom is the multipath fading margin, which has been determined in the initialisation phase.

Up to npsw 3.0.0 the multipath channel (i.e. link performance tables) were the same for each MS but in npsw 4.0.0 multipath channel depends on cell and becomes thus also MS dependent. This means that average power rise, required power control headroom and the SHO gains are now calculated in separately for MSs having different multipath channel.

If msTxPowerPeak is below the maximum MS TX power, mobilestation.txMaxPower, the mobile station is not in outage and the transmit powers from (5.23) and (5.24) are stored and used later in CalcIntUL.m. If msTxPowerPeak exceeds the maximum power a mobile station is allowed to transmit with, the outage counter of that mobile station is increased by one and msTxPower and msTxPowerRaised is put to –999 dBm. This means that in the next iteration these mobile stations will not cause interference, as it is probable that they will be put in outage later. This happens when the outage counter reaches limitOutageUL. Then the mobilestation.usedCarr is set to –2, i.e. outage because the MS is running out of power.

In the case that msTxPower is below the minimum transmit power of the mobile station, mobilestation.txMinPower, msTxPower is replaced by this minimum. The same applies to msTxPowerRaised.

5.7 Calculating the interference in uplink

As input for the RlbUL.m the interference experienced at base station k has to be estimated. CalcIntUL.m calculates both, the interference from the own cell, IownUL, and from all other cells, IothUL. If a second operator is present also interference coming from the MSs of the other operator, IothOpUL, is calculated. Then the other-cell-to-own-cell-interference-ratio is calculated according to Equation (5.26a) or (5.26b) and stored in the perf(k).i field of the perf structure of BS k.

( ) ( )( )kIownULkIothULikperf =.

(5.26a) ( ) ( ) ( )( )kIownUL

kIothOpULkIothULikperf +=. (5.26b)

The own cell interference bsRxPowerLin(k) is calculated according to the following pseudo-code (5.27), by subtracting the link losses from the estimated mobile station transmit powers:

bsRxPowerLin=0;

for n=indeces of MSs not in outage nor in othercarriers

k=index of the best server of MS n;bsRxPowerLin(k) += vUL(n)*log2lin(msTxPower(n)-

linklossMUL(k,n));end;

(5.27)

Page 72: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

72 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

where msTxPower(n) is the average transmitted power of the mobile station n, average power rise excluded and msTxPowerRaised(n) is the average transmitted power of the mobile station n, but average power rise included. These have been calculated in CalcMStx.m, see Section 5.6. linklossMDL(i,n) is the link loss between the mobile station n and base station i and vUL(n) is the effective channel activity of mobile station n. In the end, bsRxPowerLin is copied to IownUL,

Including the second operator when calculating the other-cell interference in version 4.0.0 the interference has been split into two parts. Additionally now, the interference leaking from one operator to the other is taken into account. It is calculated in the same way than the other-cell interference (using txPowerRaised) within one operator, however txPowerRaised which is going from one operator's MSs to the other operator's BSs is weighted with the value of the acFilterUL at the correct channel offset according (5.28). The impact of the other operator's mobile stations' TX powers on the interference received by the first operator's base stations is twofold. Firstly the mobile stations of one operator are directly leaking part of their transmission powers into the receive band of the other operator's BSs. The value to describe this leakage in npsw is called acpFilterUL. Secondly the BSs of one operator have only limited selectivity and therefore receive also power in the transmission band of the other operator's mobile stations. The value of the BS receiver's selectivity is called aciFilterUL. The effect of adjacent channel interference is illustrated in Figure 5.3.

Rx Rx

Frequency 1 Frequency 2

BS selectivity

wanted signal

MS leakage

0 dB

BS ACP

0 dB

BS ACP

f1 f2

Ptx Ptx0 dB

MS ACLR

0 dB

MS ACLRf1 f2

f1 f2f2f1

Figure 5.3. Adjacent channel interference in UL

The value of acFilterUL describing both effects is the negative logarithm of the sum of the linear values of -aciFilterUL and -acpFilterUL according Equation (5.28).

Page 73: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 73

npsw 5.0.0 1.7.2001

( ) ( ( )[ ]( )[ ])setchannelOffLaciFilterUlog2lin

setchannelOffLacpFilterUlog2linlin2logsetchannelOffacFilterUL−

+−−= (5.28)

Following two parts describe the interference coming from outside the own cell: ( )

( )[ ] ( )( )∑

≠∈

⋅−⋅=

⋅=

indMStypeYk

k

mk

kCaXm

kbestServermindMSOpXk mk

kkCaXm

acMinPowULlog2linaisedmsTxPowerRlog2linsetchannelOffacFilterULlog2lin

LvossrxRaisedCr

LaisedmsTxPowerRlog2linvrxRaised

,max

,.

)(, ,

,

(5.29)

rxRaisedm,CaX is the interference which is received from base stations using carrier X, from mobile stations using carrier X outside it's own cell.

rxRaisedCrossm,CaX is the interference which is received from base stations using carrier X, from all mobile stations of all cells using carrier Y, X ≠ Y

Lm,k is the link loss in UL between MSk and BSm. ν k is the channel activity in UL for MSk. msTxPowerRaised is the average transmitted power of the mobile station, including the

average power rise as calculated in CalcMStx.m, see Section 5.6. Due to "history", rxRaisedm is copied to IothULm, rxRaisedCrossm is copied to IothOpULm.

The new loading values are finally calculated according (5.30) as "loading caused by

the own operator's users, UetaOwn" and as "loading coming from all the users, Ueta"

linpowernoiseBSIownULIothULIownULIothULUetaOwn

linpowernoiseBSIothOpULIownULIothULIothOpULIownULIothULUeta

___

___

+++=

+++++=

(5.30)

Both loading values can be compared to different thresholds, excessLoadTotal and excessLoadOwn, set in npswini.m, when UL load control is performed.

5.8 Post processing functions related to uplink analysis

This section describe uplink analysis related post processing calculations. Calculations in the Sections 5.8.1 and 5.8.2 and are required for several displays mentioned in Section 3.3.2.2. The Section 5.8.3 includes the definition of the coverage probability as in npsw.

5.8.1 Calculating the m and the average R

After the uplink iteration the script Calcm_RUL.m estimates the perf.mUL and the perf.RUL cell by cell. Only mobile stations which are connected to the carrier 1 and

Page 74: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

74 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

possibly carrier 2 are included. perf(k).RUL contains the average bit rate for k-th cell, perf(k).m is the number of users in cell k. In npsw 2.0.0 Calcm_RUL.m was called inside the iteration. The mobile station is assigned to a cell as described in Section 3.3.4.2.

5.8.2 Calculating the best server in uplink for each map pixel

After the uplink iteration has converged the function BestServerULArea.m is called to find out for each point in the map, whether or not a mobile station in the pixel could make a connection, and what would be the best server. It is assumed here that the interference situation remains the same as what was left after UL iteration. BestServerULArea.m is called also in calculating the area coverage probability in uplink (CalcCovPUL.m, Section 5.8.3). BestServerULArea.m gives an approximation but for higher bit rates (> 144 kbps) the accuracy decreases.

BestServerULArea.m approximates the choice of best server and coverage (or outage) at each pixel assuming a certain MS bit rate and speed which are given as input parameters of the function. The output of the function is the bestServer(j,i)-matrix, j=1,…,yPixels, i=1,…,xPixels, in which there is the index of the bestServer BS for every pixel. If there is no coverage in a certain pixel (j,i) the bestServer(j,i)=0. This matrix is used in several displays, see Chapter 8. BestServerULArea.m uses the loading Ueta(m), m=1,…,numBSs, of base stations calculated, when RlbUL.m was last called in the uplink iteration. By default the function is called after uplink iteration with bitrate = wideAreaCovR and speed = wideAreaCovSpeed but it can be used with other bit rates and MS speeds as well.

According to Equation (5.4) the increase of loading at BS m caused by an additional mobile station is estimated by

( ) ( ) ( )( ) numBSsm

REbNoWvUL

imperfmUetamnewUeta ,...,1;1

.1 =

⋅⋅+

++= (5.31)

where perf(m).i is the other-to-own cell interference ratio at BS m, W is the modulation bandwidth, R is the bit rate and EbNo is the Eb/N0 requirement in absolute units calculated from MS speed (see Section 5.1). Based on Section 5.1 the required average transmitted power from pixel (j,i) to BS m would be (in dBm)

( ) ( )

( )( )( )mnewUetavULlin2logpowernoiseBS

ijmlinklossULREbNo

WvULlin2logijmxPowerminNeededT

−⋅−

++

⋅⋅+−=

1__

,,1,,(5.32)

This method (Equations (5.31) and (5.32)) was used in npsw 3.0.0. However, since it has been found that the accuracy is poor in the cases where there would be a real need to estimate the load increase (high bit rates), the method was changed in npsw 4.0.0. The idea is that instead of even trying to estimate the situation for an additional user it is thought that the "test MS" in each pixel doesn't change the interferences situation. The problem comes of course in that case that there were no MS in iteration using the tested service. In

Page 75: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 75

npsw 5.0.0 1.7.2001

this case the results could be highly optimistic for high bit rates. In npsw 4.0.0 the Equation (5.32) is simply replaced by

( ) ( )

( )[ ]{ }mUetavULlin2logpowernoiseBS

ijmlinklossULRijEbNo

WvULlin2logijmxPowerminNeededT

−⋅−

++

⋅+−=

1__

,,),(

1,,(5.33)

In the case that according to the load factor of the "test MS", the test MS could alone cause more loading that was produced in the iteration, a warning message is given.

After calculating minNeededTxPower from every pixel to every base station by (5.33) the bestServer matrix is determined by finding the minimum of the vector minNeededTxPower(m,j,i), m=1,…,numBSs, over m at each pixel (j,i). Likewise in the functions BestServerUL.m, and CalcMStx.m, Sections 5.5 and 5.6, the difference between the best and the second best server is next calculated, but now for every pixel. Required multipath fading margins (headrooms) are estimated, soft handover gain is subtracted and a pixel is put to outage, i.e. bestServer(k,l)=0, if the required peak power exceeds msMaxTxPower given as a parameter to the function.

In the case of CPICHPowerSwitch == 3 the best server and the second best server in a pixel is chosen only from the active set according to the SHO criteria, see Section 6.6.2.

A major difference of version 4.0.0 compared to version 3.0.0 is that since the link performance tables (multipath channel) are cell based, separate Eb/N0’s and other link performance figures are used in pixels with different multipath channel (stored in matrix channelMap).

5.8.3 Estimating the area coverage probability in uplink

In estimating the area coverage probability it is assumed that the interference situation is stable. This means here that all the mobiles left after uplink/downlink iteration will remain in the carrier 1 or possible carrier 2 (usedCarr>=1) and perf.i will not change which are the basic assumptions behind the Equation (5.33). Now it can be estimated whether or not a mobile station using a certain bit rate and having a certain Eb/N0 requirement could get the service in some geographical location. Area coverage probability is defined here as the proportion of the chosen area where a MS really gets the wanted service under stable interference situation. In npsw the calculation is made by the script CalcCovPUL.m. The input parameters are MS speed, bit rate and maximum TX power of the service. The script calls BestServerULArea.m, see Section 5.8.2, displays the best server map according to input speed, bit rate and maximum TX power, lets the user choose a polygonal study area by mouse and returns the area coverage probability, wideAreaCovP, in the chosen area. CalcCovPUL.m can be started from the npsw-main window after the uplink iteration under menu label Area coverage and sub-menu, Uplink dedicated channel coverage. The function can be used to check whether or not an area coverage requirement is met for certain service/services under the traffic condition, which was left after uplink iteration. Also composite coverage for all the services is shown.

The analysis can be performed for the first or for both operators in the 2 operator case.

Page 76: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

76 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

6 Detailed Downlink Iteration Step The downlink iteration step follows the uplink prediction step. Main achievements in the DL iteration in version 4.0.0 were • more precise modelling of the SHO gain in DL • different service possible than in UL • scaling of the initial link TX powers of a MS with the CPICH powers • 2nd operator influence taken into account • different link loss possible in DL due to MHA and/or remote RF head

Main achievements in the DL iteration step in version 5.0.0 were • merging of UL and DL iteration steps into one loop • possibility of having second carrier for one operator including IF-HO • CPICH Ec/I0 coverage checking for MSs within the iterations. MSs with insufficient

CPICH Ec/I0 perform IF-HO or are put to outage. • DL Load reduction code simplified and made faster

The target of the downlink iteration step is to allocate the correct base station transmit power to each mobile station. The base station transmit powers are iteratively changed until the C/I requirement (targetCI) of each mobile station is reached. The targetCI is specified as

[ ]

−=

RDLionmobilestatWlin2logEbNoDLionmobilestatdBtargetCI

.. (6.1)

Where mobilestation.EbNoDL is the mobile station Eb/N0 in DL, mobilestation.RDL is the bit rate in use in DL, W is the WCDMA chip rate.

Page 77: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 77

npsw 5.0.0 1.7.2001

Already before the downlink prediction starts the CPICH transmit powers to the base stations (CPICHPowerAlloc.m) are allocated and initial the best server in DL is calculated (BestServerDL.m). Next step is calling the radio link budget for downlink (RlbDL.m). Since no interference information is known when the iteration starts, an initial estimate for the base station transmit powers is needed. The function of the radio link budget is to assign an Eb/N0 corrected sensitivity value to each mobile station according Equation (6.2). Currently only mobile stations using carrier 1 and/or carrier 2 are included in the downlink iteration. For downlink iteration the soft handover connections have to be known, this is done in CalcSHO2.m. When the mobile station sensitivity and soft handover connections are known, the initial base station transmit powers can be calculated based on the link loss (BStxPowAlloc.m). All these tasks are performed in InitialiseIteration.m (see Section 3.6) and after that the iteration can start.

In CalcIntDL.m the downlink transmit powers for each link are checked and if necessary limited. Also the total transmit powers of the base stations are checked and in case they are exceeded CalcIntDL.m performs IF-HO for MSs or places links and/or mobile stations into outage. Then the C/I for each mobile station is estimated. The base station transmit powers are adjusted based on the difference between the target C/I (targetCI) - corrected by the DL SHO gain - and the current C/I (C_over_I). The loop breaks if the change in the C/Is (deltaCI) is less than specified (limitCI) or if the change from run to run is less than limitDeltaCI.

The estimation of the correct transmit power requires iteration, since the C/I at each mobile station is dependent on the powers allocated to the other mobile stations. The orthogonality of the downlink is taken into account by a MS specific, channel and speed dependent orthogonality factor. The channel is determined in initialisation routine UpdateChannelMatrices.m The flow chart of the DL iteration can be seen in Figure 6.1.

6.1 CPICH power allocation and calculation of the best server in downlink

In npsw the best server in DL is determined by the BS from which the highest CPICH power level is received. For this, the CPICH channels transmit powers have to be set first in CPICHPowerAlloc.m. Three methods are implemented and can be chosen by setting the CPICHPowerSwitch in npswini.m to the appropriate value: • CPICHPowerSwitch := 1: all BSs have same CPICH power (maxCPICHPower) • CPICHPowerSwitch := 2: CPICH powers are corrected with UL loading • CPICHPowerSwitch := 3: CPICH powers set individually in the bsParamFile

The different possibilities are described in Section 3.3.4.1. For each mobile station all received CPICH levels are calculated and the base station from which the maximum value is received is assigned to the MS as the best server in DL. During the DL iteration itself the CPICH powers are kept fixed with all three methods.

Page 78: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

78 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

check UL andDLbreak criteria

adjust TX powers of each remaininglinks according to deltaCI

update deltaCIold

fulfilled

Flow chartDownlink iteration step

CalcIntDL.mcalculate the C/I for each connection

calculate C/I for each MS

CalcMsSHOgainsDL.mcalculate the SHO diversity combining

gains; adjust the required change to C/I

UL iteration step

initialise deltaCIold

PerchPowAlloc.mallocate the Perch channel powers

BestServerDL.mcalculate the received Perch levels and

determine the best server in DL

RlbDL.mcalculate the MS sensitivities

BStxPowAlloc.mcalculate initial TX powers for all links

CalcSHO2.mdetermine the SHO connections

calculate target C/I's

CalcEcIoM.mcalculate CPICH Ec/Io for all MSs

CheckEcIoCoverage.mcheck Ec/Io, perform IFHO or put

MSs to outage

not fulfilled

Global Initialisation

Initialise Iterations

post processing

E N D

Figure 6.1. The flow chart for the DL initialisation and iteration step in npsw

Page 79: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 79

npsw 5.0.0 1.7.2001

6.2 Downlink radio link budget

To set the initial transmit power of a BS-MS link, the sensitivity of the MS has to be estimated. To achieve this, the MS sensitivity is calculated by adjusting the sensitivity of the base station, which is the best server, by the difference in the required Eb/N0 values of UL and DL according to Equations (6.2) and (6.3). For best server the downlink best server is used.

( ) tionFactorEbNoCorrec.covthDLbestServerperfityMSsensitiv −= (6.2)

where

( )EbNoULmsEbNoDLmstivitydeltaSensitionFactorEbNoCorrec .. −−−= (6.3)

perf(bestServerDL).covth is the sensitivity of the best serving BS in DL. The other variables are as defined in Chapter 3.

The second task of the radio link budget is to calculate the mobile station's noise power

defined by

( ) WfigurenoiseMSdensitynoiseThermallinlinpowernoiseMS ⋅+= ____2log___ (6.4)

6.3 Calculation of the soft handover connections

The detailed description of the soft handover calculations is in Chapter 7. In the case of downlink iteration the information of the soft handover connections is needed when the total C/I at each mobile station is estimated. The soft handover overhead is copied to the SHO member of the perf structure, perf.SHO.

6.4 Allocation of the initial base station transmit powers

The initial transmit power of each connection is assigned in BStxPowAlloc.m. First the power needed for the bestServerDL is allocated. This transmit power is:

[ ] ( )xyDLbestServerlinklossDLityMSsensitivdBmtxPower mm ,,+= (6.5)

where MSsensitivitym is the sensitivity of MS m, linklossDL(bestServerDL, y, x) is the link loss from the position (y,x) of MS m to its best server.

The result is put to a matrix bsTxPower: In this calculation the bestServerDL is that base station from which the mobile station receives the highest CPICH power. (The definition of the best server has to be taken from the specification, once it is available.) Since version 5.0.0 the base station and mobile stations do not have to be sorted.

Page 80: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

80 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Table 6.1. bsTxPower after the dominant base station power allocation (values are in dBm, 0 meaning no connection).

MS1 MS2 MS3 MS4 MS5 ... MS 99

MS100

... MS789

... MS 1000

BS1 1.3 2.4 0 0 0 0 0 0 0 0 0 0

BS2 0 0 0 3.5 6.3 7.1 0 0 0 0

BS3 0 0 0 0 0 0 0 0 0 0

BS4 0 0 0 0 0 0 1.9 0 0 0

BS5 0 0 0 0 0 0 0 2.5 3.1

BS6 0 0 0 0 0

BS7 0 0 5.0 0

BS8 0 0 0

BS9 0 0 0 and so on 1.5 0 0

BS10 0 0 0 0 0 0

BS11 0 0 0 0 2.1 0

BS12 0 0 0 0 0 0

BS13 0 0 0 0 0 1.4

BS14 0 0 0 0 0 0

BS15 0 0 0 0 0 0

carrier/operator 1: carrier/operator 2:

After the transmit power of the dominant connection is assigned, the transmit powers

for the other SHO connections of each MS are allocated. The transmit powers of those connections are adjusted by the difference of the CPICH power of the base station where this link is at, and the CPICH power of the best server (both in dBm) according to Equation (6.6).

( ) ( )CPICHpowerDLbestServerbsCPICHpowerkbstxPowertxPower mkm .., −+= (6.6)

where txPowerm,k is the TX power of link between cell k and MS m, txPowerm is the TX power of the best server to MS m, (Equation (6.5)), bs(k).CPICHPower is the CPICH power of BS k and bs(bestServerDL).CPICHPower is the CPICH power of the best server in DL. (all values in dBm)

Page 81: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 81

npsw 5.0.0 1.7.2001

Table 6.2. bsTxPower after the power has been allocated to the SHO connections (values are only examples, not real case).

MS1 MS2 MS3 MS4 MS5 ... MS 99

MS 100

... MS 789

... MS 1000

BS1 1.3 2.4 0 0 0 0 0 0 0 0 1 0

BS2 0 0 2.5 3.5 6.3 7.1 0 0 0 1.0

BS3 0 0 0 0 0 0 0 0 0 0

BS4 0.9 0 0 0 0 0 1.9 0 0 0 1.5

BS5 0 0 0 0 0 0 0 2.5 3.1

BS6 0 0 0 0 0

BS7 0 0 5.0 0

BS8 0 0 0 2.5

BS9 0 0 0 and so on 1.5 0 0

BS10 0 0 0 0 0 0

BS11 0 0 0 0 2.1 0

BS12 0 2.3 0 0 0 0

BS13 0.80 0 0 0 0 1.4

BS14 0 0 0 0 0 0

BS15 0 0 0 0 0 0

carrier/operator 1: carrier/operator 2:

The sum of each row contains the information of the total transmit power of each base

station's TCHs. If the link power limitation is switched on, the transmit power of each link has to be equal or less than specified in 6.5.1.

6.5 Estimating the C/I of all mobile stations

Since version 2.0.0, in the C/I analysis the control channels have been included. The power of the control channels has been split into two parts. One part is the CPICHPower and in the other part, the powers of all other control channels are lumped together into commonChannelOther. First step in the C/I calculation is checking the downlink for overload. First the individual link powers can be checked versus a service dependent maximum and minimum. If these link upper limits are exceeded the link is set temporarily to outage. This is done by setting the power to a very small value. After this happened limitOutageDL times the link is finally taken out. If it was a link to the best server of that mobile, all links are deleted and the whole MS is put to outage. In this case, perf.mDL is decreased by one and the appropriate targetCI set to zero. If the minimum limit is exceeded, just the minimum value is assigned.

Page 82: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

82 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

In the second step, the total transmit power of the base station is checked and if exceeded, links are taken out according the method specified by reducePowerSwitch.These first two steps are done in the subroutine ReduceBsTxPower.m.

Third step is then calculating the C/I of each MS by adding the C/I's of each individual link of that MS.

A flow chart of the interference calculation in CalcIntDL.m is depicted in Figure 6.2.

calculate IownDLfor each link, sum TX powers to other

links at same BS, multiply by (1-orthFactor) and divide by link losses

calculate IothDLfor each link sum transmitted power of

all other BSs divided by appr. linklosses, for other operator/carrier, filterthe sum and add both results together

Flow chart forCalclntDL.m

for each link calculatereceived power at MS

calculate (C/I)i for each link(C/I)i = Prx,i / (IownDL+IothDL+Noise)

calculate total (C/I) for each MS(C/I) = sum(C/I)i by summing

over all links at that MS

ReduceBsTxPower.m

for each link limit the powerto the given limits

if total BS TX powers are exceeded,put links or MSs to outage or perform

IFHO

Figure 6.2. Flow chart for the interference calculation in CalcIntDL.m

Page 83: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 83

npsw 5.0.0 1.7.2001

6.5.1 Limitation of the BS transmit powers for a single link

In this section the implementation of the downlink link power limitation of a base station is described. The implementation is following tightly the algorithm proposed to ETSI standardisation group.

max. total BS TX power

CPICH power

CPICHToRefRabOffset

max. DPCH power, physical

max. DPCH power, planned

max. DPCH power, ref. RAB

min. DPCH power, physical

actual DPCH power

max. DPCH power, scaled

min. DPCH power, scaled*

TPC dynamic range*

Figure 6.3. Downlink power limits and power allocation

)* min. DPCH power, scaled and TPC dynamic range are NOT implemented in npsw

Following BS transmit power limits in downlink are implemented: • The maximum possible average BS transmit power basestation.txMaxPower

This is the average maximum power which the power amplifier can deliver, including both the traffic channels and all control channels.

• The CPICH channel power, basestation.CPICHPower The actual CPICH power is to be set by the planner and can be different for each cell in the network.

• The "hard" maximum and minimum transmit power of a dedicated physical channel (traffic), basestation.txMaxPowerPerLink, basestation.txMinPowerPerLink. These are the limits within a single link's power has to be assigned regardless of any requirements (bit rate, MS speed, etc.). They are determined by the physical capabilities of the channel unit.

• In special circumstances it might be desirable to limit the above maximum physical transmit power of the single link to be less than the physical maximum and / or the minimum physical transmit power to be higher than the physical minimum what the channel unit would allow. This is done by introducing the "planned" maximum and minimum transmit powers basestation.pTxDLAbsMax and pTxDLAbsMin Note: pTxDLAbsMin is used currently and therefore the value is left in npswini.m and set there to –999 dBm. However a TPC dynamic range is specified, which gives the minimum scaled transmit power of a DTCH (see Figure 6.3). TPC dynamic range is NOT implemented in npsw 5.0.0.

Page 84: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

84 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

• Additionally to the above physical hardware or planned limits for the transmit power of a DPCH the actual maximum transmit power of a RAB depends on the service used and the terminal speed. This maximum transmit power is scaled relative to the transmit power of the reference radio access bearer (RAB), called the wide area coverage service. Its bit rate is given by the parameter wideAreaCovR and the Eb/N0 requirement by wideAreaCovEbNo. The value of the maximum transmit power of this reference service is given relative to the current CPICH power setting by the parameter CPICHToRefRabOffset. Positive values mean that the maximum power for the reference service is below the CPICH power.

• With these values, the maximum transmit power for a specific RAB with the bit rate RDL and Eb/N0 requirement EbNoDL is calculated according (6.7).

vEbNowideAreaCoEbNoDL

vRwideAreaCoRDLPP reftxtx ⋅⋅= ,max, (6.7)

whereRabOffsetCPICHToRef

CPICHPowernbasestatioP reftx.

, = , EbNoDL is the DL Eb/N0 calculated with the

bit rate of the MS but with the speed of the reference mobile (wideAreaCovSpeed). (Reason: The real speed is not known in reality so using it would be too optimistic.) (all quantities in linear scale) The minimum transmit power of a certain RAB is always the same as the physical limit or the planned minimum limit, which ever is smaller.

Steps for limiting the transmit powers for each link: 1. The CPICH powers are set according to the CPICHPowerSwitch. 2. The physical limits of the DPCH are given from the basestation structure. 3. The physical limits are checked versus the "planned" physical limits and the appropriate

values are chosen. 4. The maximum transmit power of the reference RAB is calculated. 5. The maximum transmit power of the reference RAB is checked to the limits in 4. and 5.

In case the limits are exceeded the maximum transmit power of the reference RAB is NOT restricted but a warning is issued.

6. The maximum transmit power of each link is calculated according to the scaling in (6.7). 7. The maximum transmit power of each link is checked against the limits and possibly

restricted to the limits. 8. The actual transmit power of each link is checked versus the limit of 7 and possibly

restricted. In case the maximum limit is exceeded, the link is put temporarily to outage (the power is set to a small value, the link's outage counter is increased and in case it is expired, the link is taken to outage. If the link happened to be a best server connection, the mobile is put to other carrier in 2 carrier case, if the limitIFHO –counter is not exceeded. Otherwise the mobile is put to outage and all links are deleted). In case the actual transmit power is below the minimum, the value is set to the minimum.

The whole process can be seen in the flowchart of Figure 6.4.

Page 85: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 85

npsw 5.0.0 1.7.2001

basestation(i).txMinPowerPerLink =max(basestation(i).TxMinPowerPerLink, ptxDlAbsMin)

basestation(i).txMaxPowerPerLink =min(basestation(i).TxMaxPowerPerLink,

basestation(i).ptxDLAbsMax)

following values must be set before checking thelink powers:

basestation.txMaxPowerbasestation.txMaxPowerPerLinkbasestation.txMinPowerPerLink

basestation.pTxDLAbsMaxptxDLAbsMin

basestation.CPICHPowerbasestation.CPICHToRefRabOffset

calculate wideAreaCovEbNoDL, the Eb/No for thereference RAB

for all basestations

set maximum TX power of the reference RABtxMaxPowerRefRab(i) = basestation(i).CPICHPower-basestation(i).CPICHToRefRabOffset

check link power limits

txMaxPowerRefRab(i) >basestation(i).txMaxPowerPerLink

ortxMaxPowerRefRab(i) <

basestation(i).txMinPowerPerLink

WARNING !!!

Yes

No

Page 86: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

86 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

actual link Power > maximum link power

set link power temporarily to small value

increase outage counter of that link

reset outage counter

put the link to outage

outage counterexpired

link was bestserver link

actual link Power < minimum link power

No

actual link power = minimum link power

No

Yes

Yes

end for all links

end for allbasestations

No

tempPowerLinMax =min(tempPowerLinMax, log2lin(basestation(i).txMaxPowerPerLink))

for all links atone base station

refref NoEbNoEb

RRefRabtxMaxPowerlog2lininMaxtempPowerL

//)(

linktheofpowermaximumset

⋅⋅= RDL DL

Yes

perform IFHO

IFHO allowedand ifhoCounter

not exceeded

Yes

Yes

No

No

set all link powers of that MS to 0

set used carrier of that MS to -3

set all outage counters of those links to 0

Figure 6.4. Flow chart of the link power limitation

Page 87: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 87

npsw 5.0.0 1.7.2001

6.5.2 Limiting the total transmit power of the base stations

After the maximum and minimum powers of the links have been checked also the total transmit power at each base station is calculated and in case the maximum is exceeded, certain amount (min(5%, (1-maxPower/totalPower)*100% ) of links are put to outage. The amount (e.g. 5%) should be chosen so, that the remaining total transmit power stays a little over the maximum. In the next iteration, all transmit powers should be a little less (because the operating point in the load curve has moved down) and should be closer to the total transmit power. Currently following methods of reducing the total transmit powers are implemented: • reducePowerSwitch = 1:

not used anymore. • reducePowerSwitch =2:

Links are taken out randomly at cells where the total transmit power is exceeded. This leads to the most realistic capacity estimates.

• reducePowerSwitch = 3: At cells where the total transmit power is exceeded, links are sorted according to the power and links using the highest powers are taken out. Using this method, the capacity is overestimated.

• reducePowerSwitch = 4: At cells where the total transmit power is exceeded, links are sorted according to the power and links using the smallest powers are taken out. Using this method, the capacity is underestimated.

In contrary to the previous versions of npsw the links are put immediately to outage. This gives faster convergence and harmonises downlink power reduction with the uplink load reduction. In the 2 carrier case the MS is first moved to another carrier, if the link was the strongest one. The total number of carrier transitions is limited by limitIFHO. If this counter is expired the mobile station is put to outage.

6.5.3 C/I calculation for the mobile stations

Next major step in CalcIntDL.m is the interference and received level estimation for each connection. Interference of the own cell, IownDL, and from other cells, IothDL, are estimated separately. Since version 4.0.0 the IothDL includes both, interference coming from other cells of the own operator and interference coming from cells of the other operator/carrier. Each soft handover connection is orthogonal only to the own cell.

As an example mobile station k connected to base station m: The received power is:

m,k

m,km, k linklossDL

P inmsRxPowerL = (6.8)

The own cell interference is:

Page 88: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

88 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

( )km

mtotkkm linklossDL

PIownDL

,

,, 1 ⋅−= α (6.9)

where αk is the orthogonality factor of MS k, Pm,k is the transmit power of the connection between BS m and MS k, linklossDLm,k is the link loss between BS m and MS k and Ptot,m is the total TX power of BS m including CPICH and other common channels.

(all values in linear scale) Note: In earlier versions of npsw the own signal was subtracted in calculating

interference from the own cell. This was because earlier the link level simulations where done only against noise. Nowadays the DL link level simulations are done with own cell and own signal interference included.

When calculating the other cell interference, since version 4.0.0 the second operator’s influence is taken into account. In IothDL the interference within one operator is calculated as has been done before. The interference going from one operator to another is calculated by filtering the BS TX power of the links with the value of acFilterDL at the correct channel offset. The impact of the one operator's base station TX power on the interference received by the other operator's MSs is two-fold. Firstly the base station is directly leaking part of it's transmission power into the receive band of the other operator's MSs. The value to describe this leakage in npsw is called acpFilterDL. Secondly the MSs of the other operator have only limited selectivity and therefore receive also power in the transmission band of the first operator's base station. The value of the so-called MS receiver's selectivity in npsw is called aciFilterDL. The effect of adjacent channel interference is illustrated in Figure 6.5.

Ptx Ptx

Frequency 1 Frequency 2

BS leakage

MS selectivity

0 dB

BS ACLR

0 dB

BS ACLR

f1 f2

Rx Rx0 dB

MS ACP

0 dB

MS ACPf1 f2

f1f2

wanted signal

f1 f2

Figure 6.5. Adjacent channel interference in DL

Page 89: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 89

npsw 5.0.0 1.7.2001

The value of acFilterDL describing both effects is the negative logarithm of the sum of the linear values of -aciFilterDL and –acpFilterDL according Equation (6.10).

( ) ( ( )[ ]( )[ ])setchannelOffLaciFilterDlog2lin

setchannelOffLacpFilterDlog2linlin2logsetchannelOffacFilterDL−

+−−= (6.10)

The other cell interference for MS k at BS m of operator/carrier 1 thereby becomes:

( )[ ]{ }∑

≠∈

⋅−

+=

2 ,

,

1 ,

,,

,max

indBStypei ki

itot

miindBStypei ki

itotkm

linklossDLacMinPowDLPsetchannelOffacFilterDLlin2log

linklossDLP

IothDL

(6.11)

Ptot,i is the total transmit power of one operator's BSi, including CPICH and other common channels,

linklossDLi,k is the link loss in DL between BSi and MSk, acMinPowDL is the power level of interference which is minimum coming from

other operator's BSs, acFilterDL is specified by Equation (6.10), numBStype1 is the number of BSs of operator/carrier 1, numBStype2 is the number of BSs of operator/carrier 2, indBStype1 is the indices of BSs of operator/carrier 1, indBStype2 is the indices of BSs of operator/carrier 2. The other cell interference of a MS in the 2nd operator’s network is calculated similarly. The C/I matrix is calculated by:

linpowernoiseMSIothDLIownDLinmsRxPowerL

llC_over_I_akmkm

kmkm ___,,

,, ++

= (6.12)

where MS_noise_power_lin is calculated according Equation (6.4). The C/I at the mobile station k is the sum of the linear C/I values of all connSHO

connections to that mobile station:

( )∑=

=connSHO

ikik allIoverCIoverC

1,_____ (6.13)

where k is the mobile station index, i is the connection index, connSHO is the number of base stations to which the MS is connected to. (values are in linear scale)

After the C/I has been calculated to each MS the gain from SHO diversity combining is

calculated. This is done in subroutine CalcMsSHOGainsDL.m. The first step in this calculation is to calculate the relative difference between the two strongest (received) CPICHs of the active set. The received CPICH levels are stored in the matrix rxlevels1, see

Page 90: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

90 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Section 7.1.1. Based on the relative difference the diversity combining gain to required C/I is calculated for each MS by using CalcShoGain.m with switch 4 (see Section 4.6). The result is stored into vector msSHOGainsDL in dB.

C_over_Ik is compared to the targetCIk, from which the SHO gain is subtracted.

kkkk IoverCDLmsSHOGainstargetCIdeltaCI __−−= (6.14)

and the transmit power from base station m to mobile station k is corrected with the deltaCIk (values in logarithmic scale).

kkmkm deltaCIbsTxPowerbsTxPower += ,, (6.15)

deltaCI calculations and power corrections are repeated until the maximum of deltaCI is less than specified (limitCI). The loop can be stopped also if the change from iteration to iteration is too small (less than limitDeltaCI).

( )[ ] ( )[ ] CIlimitDeltadeltaCIolddeltaCIlimitCIdeltaCI kkk <−< absmax|absmax (6.16)

6.6 Area coverage for downlink dedicated channels

This section describes the area coverage analysis (pixel-by-pixel) for downlink dedicated channels. It is basically not part of the iteration but can be done only after DL iteration has been performed. The calculation is based on the transmit power limits per radio link. The parameters have been described in Section 6.5.1. Pixel-by-pixel it is checked, whether or not there is enough transmit power per link from base stations in the active set, if there would be a MS in the pixel, using a given service (bit rate) and having a given speed. It is assumed here that the total transmit powers of BS do not change from what was left after DL iteration. In the iterations there may or may not have been a MS in that pixel. The analysis is performed for both operators in the two operator case, if chosen from the GUI.

6.6.1 Parameters and usage

The analysis is done by the script CalcCovPDL.m and it may be invoked either from the command line or from the npsw main window. The main input parameters of CalcCovPDL.m are: • tmpBitRate

the bit rate (kbps) of the service for which the coverage analysis is made. If tmpBitRate is not available, wideAreaCovR given in npswini.m is used, see Sections 3.5 and 5.1.

• tmpSpeed the MS speed (km/h) for which the coverage analysis is made. If tmpSpeed is not available wideAreaCovSpeed given in npswini.m is used, see Sections 3.5 and 5.1.

• tmpAbsMax the cell based maximum power per DL radio link (dBm) for any service given in the BS input file. There is also the possibility to use common maximum power per link, which is indicated by the variable useCommonAbsMax.

Page 91: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 91

npsw 5.0.0 1.7.2001

• tmpCPICHToRefRabOffset the cell based offset (dB) of the maximum power for the reference service (with wideAreaCovR and wideAreaCovSpeed) down from the CPICH channel power. This is given in the BS input file. There is also the possibility to use common CPICHToRefRabOffset which is indicated by the variable useCommonOffset.

• tmpCovTarget target coverage probability (%). If tmpCovTarget is not available 95% is used.

The most important outputs of CalcCovPDL.m are: • The coverage probability of the given service and MS speed is estimated in a polygon

given by the user. The current total BS powers (after latest DL iteration) and power limits per link are assumed. The result is stored to the variable wideAreaCovPDL.

• It is estimated for the given polygon or for wanted base stations specified in wantedBS vector, what should be the CPICHToRefRabOffset or pTxDLAbsMax to achieve the target coverage probability, if CPICHToRefRabOffset and respectively pTxDLAbsMax would limit the transmit powers per link alone. Also in this case the current total BS powers are assumed. The results of these calculations are stored to the variables requiredCPICHToRefRabOffset and requiredMaxTxPower for the area, and to the vectors requiredCPICHToRefRabOffsetBS and requiredMaxTxPowerBS for the wanted base stations.

The polygon can be drawn by mouse on top of BS map or alternatively read from file, if previousPolygonFlag equals one. After CalcCovPDL.m has been performed, new power limits per link, determined from CPICHToRefRabOffset and pTxDLAbsMax, may be set for a new capacity iteration.

A new iteration should really be done because power limit setting can have effect on the capacity, and again, the new capacity iteration can have an effect to the area coverage results.

Note that a fast fading margin may be needed to the maximum power per link limits in real system.

6.6.2 Detailed calculation

In the initialisation phase the following temporal variables/matrices are calculated: • tmpEbNoDL

yPixels * xPixels matrix of downlink Eb/N0 requirements (linear scale) for the studied service and studied MS speed to each pixel. This is done according to the channelMap created in CreateChannelMap.m.

• orthFactormat yPixels * xPixels matrix of orthogonality factors to each pixel. This is done according to the channelMap created in CreateChannelMap.m.

Page 92: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

92 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

• tmpEbNoRefRab The BS based numBSs vector of downlink Eb/N0 requirements (linear scale) for the reference service with wideAreaCovR and wideAreaCovSpeed.

• tmpEbNoPlanned The BS based planned Eb/N0 (linear scale) used in scaling the power limits. In here tmpBitRate is used but wideAreaCovSpeed because it is assumed that the MS speed is not known in RNC.

• tmpMaxPowerRefRab Vector of maximum powers (dBm) for the reference service, which is calculated by subtracting tmpCPICHToRefRabOffset from basestation.CPICHPower at each base station.

• tmpMaxPower Vector of maximum powers (dBm) for the studied service at different BSs, which is calculated for BS k by:

+

=

RabtmpEbNoRefnnedtmpEbNoPla

vRwideAreaCotmpBitRatelin2logrRefRab(k)tmpMaxPowe

tmpAbsMax,min

krtmpMaxPowe )(

(6.17)

• rho yPixels * xPixels matrix of the C/I requirement to each pixel for the studied speed and bit rate.

Next the active set is formed as a three dimensional binary matrix CPICHCorrectionM(k,j,i), k=1,…numBSs, j=1,…,yPixels, i=1,…,xPixels, in which there is a zero in (k,j,i) if the base station k is not in the active set of pixel (j,i). If base station k is in the active set in pixel (j,i) the value of CPICHCorrectionM(k,j,i) is the maximum DL TX power per link limit at BS k relative to the highest maximum DL TX power per link of the base stations in active set in pixel (j,i). I.e.

( ) ( ) ( )[ ]

−=

∈lrtmpMaxPowemaxkrtmpMaxPowelog2link,j,ictionMCPICHCorre

AS(j,i)l (6.18)

where tmpMaxPower is defined in Equation (6.17). The maximum power per link limit in pixel (j,i), ( )[ ]lrtmpMaxPowe

ijASl ),(max

∈, is stored to

matrix tx_power_limit(j,i) in decibel scale. Based on the relative (received) level difference between two strongest CPICHs in the active set a SHO diversity combining gain is calculated to each pixel by using the subroutine CalcShoGain.m with switch 4.

The next major step is the calculation of the required DL transmit power to each pixel. The method is derived from the maximal ratio combing. In the following, mathematical notation is used for convenience. Assume

ρ is the required energy per user information bit over total in-band interference spectral density, for the used service

Page 93: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 93

npsw 5.0.0 1.7.2001

R bit rate of the used service W is the chip rate Nms is the background noise level at MS Itot is the total received wideband interference power at MS Ik is the total received wideband power at MS from BS k Lk is the link loss from BS k to the MS αk is the orthogonality factor of cell BS k. Assume also that the transmit powers of the base stations in the active set of the studied

MS location pixel are equal, except that they will be scaled according to the possible differences in the limits for maximum powers per link. Then the condition of the maximum transmit power per link ptx (maximum taken over the active set) for a sufficient connection is

( )∑∈

≥+⋅−⋅

⋅⋅ASk msktotk

ktx NIIL

pRW ρ

αβ (6.19)

where βk are the scaling factors for different base stations. In npsw they are stored in the matrix CPICHCorrectionM, see Equation (6.18). Thus the equivalent requirement for ptx is

( )∑∈ +⋅−⋅

⋅≥

ASk msktotk

ktx

NIIL

WRp

αβ

ρ / (6.20)

In CalcCovPDL.m the inequality (6.20) is solved to each pixel, for the studied service and MS speed, and the result is stored to a temporary matrix required_tx_power(j,i). This is converted to decibel scale and the result is compared to tx_power_limit(j,i) in each pixel of the wanted area. If required_tx_power exceeds the limit in a pixel the pixel is doomed outage. Finally the coverage probability is calculated as the number of pixels not in outage in the wanted area divided by the total number of pixels in the wanted area. The result is stored to wideAreaCovPDL. A plot is drawn showing the base stations and different colours indicating required TX power of the studied service to the different pixels.

In the next phase it is calculated what should be the common CPICHToRefRabOffset or pTxDLAbsMax to achieve target coverage probability tmpCovTarget.

When using CPICHToRefRabOffset only (pTxDLAbsMax = ∞ dB, i.e. no "soft" limit for the link powers) same coverage is intended to be given to all services. The required TX power per link in the pixels of the chosen area is first scaled down to the reference service and CPICH transmit power is subtracted:

( ) ( )[ ]

( )[ ]

⋅−

−=

∈ RabtmpEbNoRefnnedtmpEbNoPla

vRwideAreaCotmpBitRatelin2logr.CPICHPoweknbasestatiomax

j,ix_powerrequired_tlin2logj,ix_power2required_t

AS(j,i)k

(6.21)

The cumulative distribution function is formed and plotted for required_tx_power2, the closest point giving tmpCovTarget is found and the opposite number of the result is stored to requiredCPICHToRefRabOffset. Thus, if CPICHToRefRabOffset would be set to

Page 94: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

94 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

requiredCPICHToRefRabOffset, bit-rate and Eb/N0 scaling would be done and pTxDLAbsMax would be set to very high value, then the coverage probability of tmpCovTarget would be achieved for the studied service. (Notice that if tmpSpeed = wideAreaCovSpeed and no other Tx power limitations are used, then the same coverage probability is offered for all services.)

To have an idea on setting pTxDLAbsMax, another cumulative distribution is plotted. This is done directly with required_tx_power in decibel scale. The closest point is searched from the cdf which would give the tmpCovTarget and the result is stored to requiredMaxTxPower. If this number would be set to pTxDLAbsMax then the tmpCovTarget coverage probability would be served for the studied service if there would be no more restrictive conditions. Notice that if pTxDLAbsMax is the only limitation (e.g. CPICHToRefRabOffset = - ∞, i.e. no link powers limit for the reference service) then those services would have lower coverage probability which have higher link requirements (Eb/N0 times bit rate) than the studied service. Correspondingly those services having lower link requirements than the studied service would have higher coverage probability.

Base station based analysis is done if the vector wantedBS exists and is not empty. The analysis is analog with the area based case but now the outputs are the requiredCPICHToRefRabOffsetBS and requiredMaxTxPowerBS vectors giving an idea how base stations based CPICHToRefRabOffset's and pTxDLAbsMax's could be set. It is calculated for each wanted base station, in the pixels in which the base station would be in the active set, what would be the required transmit power per link for the studied service. The required_tx_power(j,i) was earlier the required tx power in pixel (j,i) for the base station in active set having highest power window (BS with highest limit for the power per link). This means that in BS based analysis the required tx power must be scaled down by the CPICHCorrectionM(k,j,i) for the BS k. That is, the analogy with the Equation (6.21), for BS k, is

( ) ( ) ( )[ ]

( )

⋅−

−⋅=

RabtmpEbNoRefnnedtmpEbNoPla

vRwideAreaCotmpBitRatelin2logCPICHPowerknbasestatio

ijpowertxrequiredijkctionMCPICHCorrelin2logijpowertxrequired

.

,__,,,2__

(6.22)

The cumulative distribution function of required_tx_power2 is again formed and plotted, but now only for the pixels in which BS k is in active set. The closest point giving tmpCovTarget is found and the opposite number of the result is stored to requiredCPICHToRefRabOffsetBS(k). Thus, if CPICHToRefRabOffset at BS k would be set to requiredCPICHToRefRabOffsetBS(k), bit-rate and Eb/N0 scaling would be done and pTxDLAbsMax would be set to very high value, then the coverage probability of tmpCovTarget would be achieved for the studied service at BS k.

In the final step it is found out what could be the non-scaled power limit/link, pTxDLAbsMax for the studied service at each base station k in the wantedBS vector. The result is stored to requiredMaxTxPower(k).

Page 95: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 95

npsw 5.0.0 1.7.2001

6.7 Checking Ec/I0 for the CPICH for the iterated MSs

In npsw 4.0.0 it was possible to have a working DL for the iterated MSs although the received CPICH Ec/I0 could be too small for a proper operation. In npsw 5.0.0 this is not possible but the received Ec/I0 from the best server in DL is checked for the MSs in each iteration step. If the level is not sufficient, outage counter outageCPICH is increased. If the outage counter has been expired, an IF-HO is made if allowed and the interfrequency counter has not expired. In latter case the MS is put to outage and the mobilestation.usedCarr indicator is set to –6 indicating CPICH outage. The calculation is explained below.

First a numBSs times numMSs matrix CPICHEcIoM is calculated using the script CalcEcIoM.m. This has at each row for each MS (columns) the received CPICH chip energy from the BS on that row divided by the total wideband power spectral density on the carrier which corresponds to the carrier of that BS. Thus, the entity CPICHEcIoM(j,i) tells the received CPICH Ec/I0 for the MS i, assuming that MS i, listens BS j. In case of several carriers the interference from the other carriers is added.

The checking of the CPICH coverage is done by the script CheckCPICHCoverage.m. This is based on the matrix CPICHEcIoM.

For each MS i on the carrier 1 or 2 it is checked whether the highest received CPICH Ec/I0 of the base stations on carrier 1 or 2 exceeds the threshold CPICHEcIoThreshold given in npswini.m. If not, the outage counter outageCPICH(i) is increased. In the case the outageCPICH(i) is equal or higher than limitOutageCPICH given in npswini.m there are two possibilities. If mode==1 and IF-HO counter ifhoCounter(i) is lower than limitIFHO given in npswini.m an IF-HO to the other carrier is performed. In other cases the MS i is put permanently to outage with mobilestation(i).usedCarr set to -6. Notice that in the case of two operators (mode == 2) the IF-HO is never performed.

It must be noted that the CPICH coverage checking in npsw is only approximate since only the best cell is checked. In practice the CPICH must be heard from all the cells in the active set. This means that the parameter CPICHEcIoThreshold should be set high enough allowing proper measurement and synchronization to the neighbour cells as well.

Page 96: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

96 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

7 Soft Handover Calculations and Common Channel Analysis In this chapter is described how the SHO connections are evaluated, the SHO overhead is calculated and how the CPICH C/I is analysed. Two different SHO probabilities are introduced, one for mobile stations only and one for the whole network area.

7.1 SHO Calculation

Analysing the SHO connections is done after each up- and downlink step in the iteration. This is because in the 2 carrier case the mobile can be put to another carrier and therefore the SHO environment must be re-evaluated. In uplink the SHO is taken into account by decreasing the mobile stations’ transmit powers depending on the level difference of the best and second best server (Section 4.4). In DL the gain against average received Eb/N0 is calculated also based on the level difference between the two best servers and all links are then combined using MRC.

First step in calculation of the SHO area and the SHO overhead factor, is to determine, which BS is the best server. To define, which is the best server of a mobile station at a certain location all of the methods described in the Section 3.3.4 basically could be applied. npsw 5.0.0 uses here the best server in DL, calculated as described in Section 3.3.4.1 (highest received CPICH).

Second step is to decide about to which base station and when a mobile is said to be in SHO i.e. deciding about a SHO algorithm. Also here different approaches are possible. The method applied in npsw 5.0.0 to decide, to which BSs a mobile is in SHO, is to check which CPICHs are received within a window of WINDOW_ADD below the maximum received CPICH level. The CPICH powers are set according to the CPICHPowerSwitch as described in Section 3.3.4.1.

Page 97: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 97

npsw 5.0.0 1.7.2001

7.1.1 Calculation of the SHO overhead factor

In this routine (CalcSHO.m) it is estimated how many mobile stations are connected to a base station according to the SHO. To be able to determine such connections information about the requirements of the base stations and the current network performance is needed. The SHO is only checked for the mobiles here and not for all pixels, because for calculating the SHO factor it is not important, if a certain spot of a cell area is included in the SHO area if there is no user present. The network performance is taken into account by using the best server in DL.

For each mobile the received level from the best server (DL) is taken. Then all the base stations whose received CPICH levels at that mobile position are not more than WINDOW_ADD below the best server value are determined. If the base stations in question have different WINDOW_ADD parameters the WINDOW_ADD from the best server in DL used. These receive levels are collected to a 2-dimensional matrix, rxLevels1, which therefore holds all the reception levels from all SHO connections (i. e. from BS y to MS x). Where there is no connection, the matrix value is set to 0. An example of the matrix rxLevels1 can be seen in Figure 7.1.

MS1 MS2 ....... MS x ....... MSn BS1 0 -110 0 0 BS2 -110 0 0 0 ..... ... ... ... ... BS y -115 -105 0 0 ..... ... ... ... ... BSm 0 0 -95 0

Figure 7.1. Example of the matrix rxLevels1 - for example MS1 would be in SHO to BS2 and BSy, MSx would not be in SHO and MSn would be in outage

By setting the best server value to zero (-> rxLevels2-matrix, see Figure 7.1), the SHO factor can be easily calculated as the ratio between non-zero entries of rxLevels2 to the number of users of the corresponding base station (perf(k).mDL).

MS1 MS2 ....... MS x ....... MSn BS1 0 -110 0 0 BS2 0 0 0 0 ..... ... ... ... ... BS y -115 0 0 0 ..... ... ... ... ... BSm 0 0 0 0

Figure 7.2. Example of the matrix rxLevels2 corresponding to rxLevels1 from Figure 7.1

Page 98: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

98 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

( )21

rxLevels row k of entries in# nonzero rxLevels row k of entries in# nonzero .mDL kperf

−=

(7.1)

and

( ) ( ) 1.

. −=mDLkperf

Levels1ow k of rxtries in rnonzero en#SHOkperf (7.2)

7.1.2 Calculation of the SHO probabilities

After the iteration has converged, two different SHO probabilities can be calculated. First one described in Section 7.1.2.1 calculates for mobiles which are left at carrier 1, 2 or have been put to outage, what is the probability of having n connections (n-way SHO). Second one described in Section 7.1.2.2 is to calculate how many CPICHs are received at every place in the network within WINDOW_ADD. Additionally it is checked, whether a link of a MS with multiple connections is of soft or softer type.

7.1.2.1 SHO probabilities for mobiles The number of SHO connections of each mobile can be estimated by summing the non-zero entries of bsTxPowerLin per column. From the number of mobiles not being in a SHO connection, the number of mobiles not using carrier 1 or 2 (mobiles in outage) have to be subtracted because both have no non-zero entries. The probability of n-way SHO then calculated by dividing the number of mobiles having n connections by the total number of mobiles using carrier 1 or 2. Mobiles that are in outage are not taken into account anymore since version 4.0.0. The routine doing this job is SHOproba.m.

7.1.2.2 SHO probabilities for the area By calculating the received CPICH levels from all base stations to all spots in the network, the probabilities how much of the whole network area is in n-way SHO can also be estimated by calculating how many base stations are received at a spot within a certain window WINDOW_ADD below the maximum. Also in this routine (CalcSHOarea.m) the WINDOW_ADD from the best server in DL is used as specified in Section 3.3.4.1 to get the WINDOW_ADD value. There is currently no absolute value implemented above which the CPICH has to be. Outage is checked by using the outage criteria from uplink.

Two different area plots can be generated. First one just displays the area where there is more than one base station received. The second one shows how many BSs are received within WINDOW_ADD for each spot. Finally it is counted from how many spots there are exactly n base stations received to estimate the fraction of n-way SHO for the whole area or within a selected polygon and a histogram is plotted. Also here mobiles in outage are not anymore taken into account since version 4.0.0. Examples of the plots can be found in Chapter 8.

Page 99: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 99

npsw 5.0.0 1.7.2001

7.1.2.3 Softer HO analysis Also in SHOproba.m a matrix called softerHO of the size (numBSs x numMSs) is created which has following entries: • softerHO(k,m) = 0: no connection between BS k and MS m, • softerHO(k,m) = 1: BS k is the only BS to which MS m is connected, • softerHO(k,m) = 2: BS k is in soft HO to MS m, • softerHO(k,m) = 3: BS k is in softer HO to MS m.

The decision whether a connection is soft or softer is based on the location of the involved BSs. If they are at the same location, the connection is of softer type. The matrix, however, is actually not used in the calculation. It is just an output (see Section 8.15).

7.2 Common Channel Analysis

This section describes the analysis on DL common channels, which can be done after downlink iterations have been run. CPICH (Common PIlot CHannel) analysis is described in Section 7.2.1 and CCPCH (Common Control Physical CHannel) analysis in Section 7.2.2. (3GPP specifies the Primary CCPCH used for BCH and Secondary CCPCH used for FACH and PCH, but the analysis in npsw can be applied for both by using appropriate parameters.)

7.2.1 Area coverage for the CPICH channel

In radio network planning the CPICH channel transmit power should be set as small as possible but ensuring that the best cell and neighbour cells can be measured and synchronized and the CPICH can be sufficiently used as the phase reference for all other DL physical channels. Typically this means that 5%,…,10% of the total BS power is used for CPICH.

CPICH channel analysis is done in npsw in the script CalcCovPCPICH.m. This can be called from the GUI or from the command line. CalcCovPCPICH.m calculates coverage probabilities for the CPICH channel in a polygon chosen by the user. In the case of two operators the analysis is done separately for the different operators. In the case of two carriers but one operator the analysis is done either as a combined coverage or separately for the two carriers in use.

To support correct setting of the CPICH channel transmit power in npsw the CPICH Ec/I0 is compared to a threshold: • If in a pixel CPICHEcIo (dB) of the best server in downlink (bestServDL) is lower than

tmpEcIoThreshold, then the pixel is doomed outage when calculating the coverage probability for the CPICH channel Ec/I0 (CPICHEcIoCovP) tmpEcIoThreshold (dB) is a parameter which is given by the user through the GUI, but initial values for this parameter is CPICHEcIoThreshold (dB) which is given in npswini.m.

Page 100: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

100 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

CPICHEcIo(j,i) in pixel (j,i) is defined as the chip energy divided by the total received wideband spectral power density. In npsw this is calculated as follows:

( ) ( ) ( )( )[ ]ijItotPDL1lin2log

ijbslinklossDLCPICHPowerbsnbasestatioijCPICHEcIo,

,,.,−

−= (7.3)

where bs is the index of the best server in DL in pixel (j,i), linklossDL is the three dimensional link loss matrix and ItotPDL1(j,i) is the total received wideband power in pixel (j,i) calculated by

( ) ( )( )[ ]∑

=

+=numBSs

k ijklinklossDLlog2linkotLinbsTxPowerTower_linMS_noise_pItotPDL

1 ,,ij,1 (7.4)

and bsTxPowerTotLin(k) is the total average transmission power (in linear scale) of base station k and MS_noise_power_lin is the system noise at MS.

In the case of two carriers or two operators the adjacent channel interference is still

added to Equation (7.4). The coverage probability for CPICH, CPICHEcIoCovP, is calculated as number of

pixels in the chosen area where CPICHEcIo exceed the threshold CPICHEcIoThreshold, divided by the total number of pixels in the chosen area. A plot is drawn from the analysis showing the base station map, colour in each pixel indicating the levels of CPICHEcIo with black indicating outage. Next an additional plot is drawn to a new window, which shows the distribution of the CPICH Ec/I0. The distribution is collected from the pixels in the chosen area. This figure shows the CPICH Ec/I0 from the distribution which corresponds to the chosen coverage probability and on the other hand it shows the coverage probability for the given CPICHEcIoThreshold.

Based on the coverage probabilities the user can change the CPICH powers of the base stations but after this a new iteration should be made to ensure that the capacity requirements are full filled. Increasing CPICH power naturally decreases the maximum capacity left for other channels and decreasing CPICH power naturally increases the maximum capacity left for other channels.

The modelling in npsw for the CPICH Ec/I0 is only approximate since it is done only for the best server. The Ec/I0 is not analysed in one pixel for a neighbouring cell. In operating network neighbour cells must also be measured. In a real planning tool neighbour cells' CPICH Ec/I0 should be analysed, too. In a research tool like npsw this may be approximated by adding a margin to the Ec/I0-Threshold corresponding to the WINDOW_ADD parameter. Notice the major differences between CPICH channel and dedicated traffic channels: • CPICH has no information bits. It is a known signal used for measurements,

synchronisation and channel estimation. • CPICH has no dynamic PC. • CPICH has no SHO.

Page 101: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 101

npsw 5.0.0 1.7.2001

7.2.2 Area coverage for the CCPCH

Primary Common Control Physical Channel (P-CCPCH) is used to carry BCH transport channel and Secondary Common Control Physical Channel (S-CCPCH) is used to carry FACH and PCH transport channels. In npsw there is only one generic CCPCH coverage analysis which can be used for analysing both. In P-CCPCH the spreading factor is constant (256) as well as bit rate but for S-CCPCH spreading factor and information bit rate can vary depending on what transport channels are multiplexed on S-CCPCH. Typically the spreading factor is 64, 128 or 256. Common observation is that CCPCH must be heard throughout the cell and there is no PC and no SHO available. CCPCH is orthogonal to other DL physical channels in case of no multipath. The power allocation is based on the ability to decode the channel at the cell edge.

CCPCH analysis is done in npsw in the script CalcCovPCCPCH.m. This can be called from the GUI or from the command line. CalcCovPCCPCH.m calculates coverage probabilities for the CCPCH channel in a polygon chosen by the user. In the case of two operators the analysis is done separately for the different operators. In the case of two carriers but one operator the analysis is done either as a combined coverage or separately for the two carriers in use. The choice query is in GUI.

In the real system the power of P-CCPCH or S-CCPCH is given relative to the CPICH power. In CalcCovPCCPCH this is the input parameter tmpCcpchCpichOffset, which is measured in dB down from CPICH Tx power. tmpCcpchCpichOffset is given by the user or GUI. The default value is bchCpichOffset, which is given in npswini.m. This refers to the BCH transport channel.

To support correct setting of the CCPCH channel transmit power in npsw the calculated CCPCH Eb/Nt ccpchEbNt, is compared to a threshold: • If in a pixel ccpchEbNt (dB) of the best server in downlink (bestServDL) is lower than

tmpCcpchEbNtThreshold, then the pixel is doomed outage when calculating the coverage probability for the CCPCH channel. tmpCcpchEbNtThreshold (dB) is a parameter which is given by the user or the GUI, but initial values for this parameter is bchEbNo (dB) which is given in npswini.m. This indicates the minimum Eb/N0 on BCH which is required to be able to decode BCCH. ccpchEbNt in pixel (j,i) is defined as the information bit energy divided by the total received in-band interference power spectral density, i.e. narrowband interference left after despreading with the orthogonal channelisation code. ccpchEbNt is calculated in npsw as follows:

( )( ) ( )[ ]ijItotPDL2lin2logijbslinklossDL

bsccpchPoweringGaintmpProcessijccpchEbNt,,,

)(,−−

+= (7.5)

where the index bs is the index of the best server in DL in pixel (j,i), linklossDL is the three dimensional linkloss matrix, tmpProcessingGain (dB) is calculated as 10·log10(W/tmpBitRate), where W is the chip rate and tmpBitRate is the information bit rate given as an input parameter. tmpBitRate is set by the user or GUI and the default

Page 102: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

102 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

value is bchBitRate which is defined in npswini.m indicating the BCH transport channel and ccpchPower(bs) is calculated as

( ) ( ) ichOffsettmpCcpchCpCPICHPowerbsnbasestatiobsccpchPower −= . (7.6)

In ItotPDL2 the orthogonal part of the own cell interference is subtracted, that is

( ) ( )[ ] ( )( )[ ]

( )( )[ ]∑

≠=

+

⋅−+=

numBSs

bskk ijbslinklossDLlog2linkotLinbsTxPowerT

ijbslinklossDLlog2linbsotLinbsTxPowerTij1ower_linMS_noise_pijItotPDL2

,1 ,,

,,,, α

(7.7)

where α(j,i) is the orthogonality factor of the pixel (j,i). Orthogonality factor is calculated to a yPixels*xPixels matrix orthFactormat based on the channelMap matrix, which was generated in CreateChannelMap.m. bsTxPowerTotLin(k) is the total average transmission power (in linear scale) of base station k and MS_noise_power_lin is the system noise at MS. In the case of two carriers or two operators the adjacent channel interference is still added to Equation (7.7).

The coverage probability for CCPCH, ccpchEbNtCovP, is calculated as number of pixels in the chosen area where ccpchEbNt exceed the threshold tmpCcpchEbNtThreshold, divided by the total number of pixels in the chosen area. A plot is drawn from the analysis showing the base station map, colour in each pixel indicating the levels of ccpchEbNt with black indicating outage. Next an additional plot is drawn to a new window, which shows the distribution of the CCPCH Eb/Nt. The distribution is collected from the pixels in the chosen area. This figure also shows the CCPCH Eb/Nt from the distribution which corresponds to the chosen coverage probability and on the other hand it shows the coverage probability for the given tmpCcpchEbNtThreshold.

Based on the coverage probabilities the user can change the ccpchCpichOffset and thus the transmission power of CCPCH of the base stations. But it must be noted that this has an effect only in the coverage probability analysis. The interference of all DL common channels except CPICH are modelled through basestation.commonChannelOther which should also reflect the used power levels on CCPCHs.

To test S-CCPCH coverage with different TFs the user can change the bit rate and required Eb/Nt of CCPCH in GUI as well as give an appropriate share of transmission power.

Page 103: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 103

npsw 5.0.0 1.7.2001

8 Visualisation of the Results - Example Plots In this chapter the graphical outputs which are currently implemented are presented. Only a short description is given here. Most of the plots are accessible from the menu "Display" described in Section 3.3.2.2 after the iterations have converged and the post processing has been done. Coverage and common channel analysis plots are accessible from the menu "Area Coverage". Most of the outputs/analyses described in this chapter here are shown for only one operator. In case the second operator or a second carrier is present, the same plot/analysis for the second operator / second carrier is either created automatically or if the user selects so.

8.1 User distribution

8.1.1 Number of users per pixel

Displays a map showing the number of users per pixel. All the users within a square determined by the resolution are counted regardless of the data rates they are using. Separate plots for the initial users ("Display→users (number)→all users"), for the users remaining after the uplink iteration ("Display→users (number)→UL users") and for the users after downlink iteration ("Display→users (number)→DL users") are available. Figure 8.1 shows an example for the initial user distribution. The other user distributions look similar and are not shown here.

Page 104: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

104 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.1. Example plot for the initial user distribution

8.1.2 Bit rates of users per pixel

Displays a map showing the distribution of the users highlighted according to their bit rates. Separate plots for the initial users ("Display→users (bit rates)→initial users"), for the users remaining after the iterations ("Display→users (bit rates)→served users") and for the users which are not served ("Display→users (bit rates)→not served users") are available. In case the not served users display is selected, they can be displayed in separate plots according to the outage reasons which include • all users not served (usedCarr <= 0 ) • users moved to outage because of hard blocking (usedCarr = -1) • users not served because maximum MS TX power was exceeded (usedCarr = -2) • users not served because the single link power was exceeded (usedCarr = -3) • users not served because BS TX power was exceeded (usedCarr = -4) • users moved outage because the UL loading was too high (usedCarr = -5) • users moved to outage because insufficent CPICH Ec/I0 (usedCarr = -6)

In all the figures, the users are displayed with different markers/colours according to their (UL) bit rate. Figure 8.2 shows an example for the not served user bit rate distribution. The other user distributions look similar and are not shown here.

Page 105: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 105

npsw 5.0.0 1.7.2001

Figure 8.2. Example plot for the not served user distribution showing the bit rates

8.2 Best server in UL and DL

In uplink direction this plot displays a map showing the base station to which a mobile station would have to transmit with minimum power. For calculation of the best server the method specified in Section 3.3.4.2 has been used. The calculation of the sensitivity of the base station has been performed using the bit rate wideAreaCoverageR and the mobile station speed wideAreaCoverageSpeed. The pixels from where the mobile would have to transmit with higher power then the maximum allowed (i.e. MS would be in outage) are displayed in black. The plot is available from the menu "Display→Best server→in UL".

For the downlink direction this plot displays a map showing the base station whose CPICH is received best at a certain mobile station location. The CPICH powers of the base stations have been set according to the CPICHPowerSwitch in the npswini.m file. For this plot no specific service of the mobile is taken into consideration. This plot is available from the menu "Display→Best server→in DL".

Page 106: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

106 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.3. The best server in UL

Figure 8.4. The best server in DL

Page 107: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 107

npsw 5.0.0 1.7.2001

8.3 Number of used carriers

This output shows a map displaying the number of used carriers for each base station together with the best UL server plot. Number of carriers at each base station is default 1, but during the uplink iteration mobiles could have been moved to outage to reduce the load below excessLoad. In this case a flag is set and the displayed number of carriers is 2 indicating that here another carrier would be needed. The plot is generated by selecting "Display→Used Carriers"

Figure 8.5. The number of used carriers

8.4 Combined DL dominance and SHO area

Displays a map showing the level of the highest received CPICH together with the SHO areas. CPICH powers have been set according CPICHPowerSwitch in npswini.m as described in Section 3.3.4.1. Calculation of the SHO area is done using the best server DL and the method explained in Section 7.1.2.2, i.e. only a relative threshold (WINDOW_ADD) for the CPICH power has been applied. SHO areas are displayed in white and received levels smaller than –130 dBm in black. The plot is selected from "Display→D and SHO"

Page 108: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

108 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.6. Level of strongest received CPICH and SHO area

8.5 SHO areas

This is the same plot as before, but only the SHO areas are shown. The plot is generated together with the plot from Section 8.4.

Figure 8.7. The SHO area (green in this example)

Page 109: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 109

npsw 5.0.0 1.7.2001

8.6 Cell Loading

Two displays for a map showing the loading of the cells together with the best UL server plot can be shown. Either the loading caused by users from the own operator/carrier alone ("Display→Loading →Own") or the total loading including the interference from the other operators'/carriers' MSs ("Display→Loading→ Other"). Pixels from UL outage are displayed in white. The scaling and the colour map used in these plots can be changed from the picture's menu "Scaling". An example for the total loading of the cells is shown in Figure 8.8.

Figure 8.8. Example for the own operator loading of the cells

Page 110: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

110 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

8.7 Other-to-own-cell-interference ratio

Displays the ratio of the interference coming from all other cells to the interference coming from the own cell, i. For display select "Display→other to own cell interf."). Pixels in UL outage are coloured in white. The scaling and the colour map used in these plots can be changed from the picture's menu "Scaling". An example of the other to own cell interference of the cells is shown in Figure 8.9.

Figure 8.9. Other to own cell interference ratio

Page 111: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 111

npsw 5.0.0 1.7.2001

8.8 TX powers of the BS for TCH

With "Display→TX powers→of BSs", for each selected base station a plot is generated showing the histogram of the link powers existing at those base stations. Finally, if selected, a histogram showing all connections at all BSs and/or a histogram showing the total TCH transmit power for all base stations is plotted.

Figure 8.10. The TX powers of all connections at e.g. BS 1

Figure 8.11. The TX powers of all connections at all BSs

Page 112: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

112 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.12. The total DTCH TX powers of all BSs

Together with the plots the average and the standard deviation of the powers are printed as well as the loading or the average loading of the cells.

8.9 Transmit powers for MSs

Displays a histogram showing the probabilities for the MSs having a certain transmit power after selecting "Display→TX powers→of MSs".

Figure 8.13. TX powers of the MSs

Page 113: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 113

npsw 5.0.0 1.7.2001

8.10 Received signal level at BSs

Displays for a desired base station a map showing the received level from all the pixels. The mobiles are transmitting with the power allocated during the uplink iteration. After selecting "Display→RX powers→of BSs" the wanted base stations can be selected from a dialog box.

Figure 8.14. The received level from all MSs at (e.g.) BS 1 of operator 1

Page 114: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

114 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

8.11 Received signal level for MSs

Displays a histogram showing the probabilities for received wideband power of the MSs after selecting "Display→RX powers→of MSs" as in Figure 8.15.

Figure 8.15. RX powers of the MSs

8.12 Link losses

After selecting the menu "Display→Link losses→UL" a dialog box let's the user choose the BSs for which to display the link losses. Additionally one can select to display the composite link losses. If selected so, the composite link losses of all BSs are displayed. Example plots are in Figure 8.16 and Figure 8.17. The same plots are available for the DL link losses.

Page 115: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 115

npsw 5.0.0 1.7.2001

Figure 8.16. UL link losses of BS 1

Figure 8.17. Composite link losses for all BSs

Page 116: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

116 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

8.13 Traffic distribution

By selecting the menu item "Display→Traffic→combined" a plot is generated showing in four subplots the traffic situation. The first plot in upper left corner shows the cumulative data rate in every pixel of the map. The second plot in the upper right corner displays the average data rate of a cell together with the best UL server plot. The graphs in the lower row show the total throughput in UL and DL direction together with the appropriate best server. By choosing "Display→Traffic→ separate", the four subplots are displayed in separate figures. For better visibility the four subplots are shown below separately in Figure 8.18 - Figure 8.21.

Figure 8.18. The number of bits transmitted from each pixel

Page 117: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 117

npsw 5.0.0 1.7.2001

Figure 8.19. The average number of bits per cell in uplink direction

Figure 8.20. The total throughput per cell in uplink direction

Page 118: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

118 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.21. The total throughput per cell in downlink direction

Page 119: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 119

npsw 5.0.0 1.7.2001

8.14 SHO overhead factor

A picture showing the overhead per cell due to SHO connections is plotted together with the best server in UL. The plot is generated by selecting "Display→SHO overhead". Cells with no SHO overhead or pixels in outage are coloured in white. The scaling and the colour map used in this plot can be changed from the picture's menu "Scaling".

Figure 8.22. The overhead due to SHO

8.15 SHO probabilities

By selecting "Display→SHO probabilities" three bar graphs and an area plot are displayed. The first two bar graphs show the SHO statistics for the active users in the network. The first bar graph is showing the percentage of actual MSs having n SHO connections. The second one is showing the probabilities for the different SHO connection types 1 way, 2 way soft, 2 way softer, 3 way soft, 3 way soft/softer, 3 way softer and more than 3 connections.

Page 120: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

120 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.23. The probabilities of n-way SHO for the users

Figure 8.24. The probabilities for the different SHO connection types

Page 121: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 121

npsw 5.0.0 1.7.2001

Next an area plot is displayed, which is showing the how many SHO connections a MS would have in each map pixel using the calculation method described in Section 7.1.2.2. The maximum number of connections used in the plot can be selected in the subroutine SHOproba.m. Then the user can draw or load a polygon, from which the statistics from the area is taken (see Figure 8.25) and in the fourth figure the bar graph of the percentage of the area from where MS would have n SHO connections is displayed.

Figure 8.25. The active set size for each pixel

Page 122: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

122 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.26. The probabilities of n CPICHs within WINDOW_ADD

Page 123: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 123

npsw 5.0.0 1.7.2001

8.16 Downlink connections for BSs

Selecting "Display→DL BS connections" a plot is generated showing all down link connections of the selected base stations.

Figure 8.27. The downlink connections of BS1

Page 124: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

124 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

8.17 Downlink connections for MSs

Selecting "Display→DL MS connections" a plot is generated showing all down link connections of selected mobile stations.

Figure 8.28. The downlink connections of MS392

8.18 Area coverage probabilities

The menu "Area coverage" lets the user select different plots for analysis of the coverage probabilities of common and dedicated channels. In version 5.0.0 following coverage analyses are implemented: • CPCIH's Ec/I0 coverage • CCPCH's Eb/Nt coverage • Uplink dedicated channel coverage • Downlink dedicated channel coverage • Paging channel coverage • Forward access channel coverage

The parameters for all analyses can be individually set by choosing the submenu "Area coverage→ AnalysisType →parameters…". The actual plots are generated by selecting "Area coverage→ AnalysisType →calculate" or from "Calculate"-button of the parameter dialog box.

Page 125: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 125

npsw 5.0.0 1.7.2001

8.18.1 CPICH Ec/I0 coverage

Common pilot channel's Ec/I0 coverage can be analysed by choosing "Area coverage→CPICH coverage (P-CPICH Ec/I0)→ calculate". Default values for the needed Ec/I0 can be used (CPICHEcIoThreshold in npswini.m) or it may be changed by " choosing "Area coverage→CPICH coverage (P-CPICH Ec/I0)→parameters…". Here also the target coverage probability can be specified. Ec/I0 threshold is considered as the threshold for being able to detect/measure the P-CPICH. The value for CPICHProcessingGain is set in npswsys.m. Two plots are then generated, the other one is showing the actual Ec/I0. Pixels with values below the threshold are colored black. For the selected area, the amount of pixels above the thresholds is displayed as coverage probability in the bottom line of the picture. The other picture is showing the CDF for the CPICH Ec/I0 with two markers. One is the needed Ec/I0 at the targeted coverage probability, the other one is showing the coverage probability at the specified Ec/I0 – threshold. In addition, the main command window shows how much CPICH power should be changed to achieve the target coverage probability at the target Ec/I0.

Figure 8.29. The received Eb/Nt of the CPICH (Perch) and coverage probability for 15 dB threshold

8.18.2 CCPCH Eb/Nt coverage

Primary common control channel's Eb/Nt coverage can be analyzed by choosing "Area coverage→CCPCH coverage (P-CCPCH Eb/Nt)→ calculate". Default values for the needed Eb/Nt (bchEbNo in npswini.m), TX power offset between CPICH and CCPCH (bchCpichOffset in npswini.m), BCH information bit rate (bchBitRate in npswini.m) and

Page 126: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

126 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

the target coverage probability can be used or they may be changed by " choosing "Area coverage→CCPCH coverage (P-CCPCH Eb/Nt)→parameters…". Eb/Nt threshold is considered as the threshold for being able to successfully decode the BCCH information on the BCH carried by the P-CCPCH. Two plots are then generated, the other one is showing the actual Eb/Nt. Pixels with values below the threshold are colored black. For the selected area, the amount of pixels above the thresholds is displayed as coverage probability in the bottom line of the picture. The other picture is showing the CDF for the BCH Eb/Nt with two markers. One is the needed Eb/Nt at the targeted coverage probability, the other one is showing the coverage probability at the specified Eb/Nt – threshold. In addition, the main command window shows how much CCPCH power should be changed to achieve the target coverage probability at the target Eb/Nt.

Figure 8.30. The received Ec/I0 of the CPICH (Perch) and coverage probability for -20 dB threshold

8.18.3 Received CPICH level

For the CPICH an additional output has been implemented which shows the received level of the CPICH. By selecting "Display→P-CPICH strength" a dialog box appears and lets the user choose from which BSs the received CPICH level should be displayed. Additionally, it can be selected whether the composite CPICH level of the selected cells and/or the composite CPICH level of all cells should be displayed. From the menu "Scaling" of each of the plots, the minimum received level, which should be displayed, can be changed. The level is then changed in all plots simultaneously. Example plots are in Figure 8.31 to Figure 8.33.

Page 127: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 127

npsw 5.0.0 1.7.2001

Figure 8.31. CPICH coverage for cell 1

Figure 8.32. Composite CPICH coverage for cells 1-3

Page 128: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

128 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.33. Composite CPICH coverage for all cells

8.18.4 Uplink dedicated channel coverage

This plot is accessible from the menu "Area coverage→Uplink dedicated channel coverage→ calculate" described in Section 3.3.2.2. The user can change the default services of a "test mobile" with menu "Area coverage→Uplink dedicated channel coverage→ parameters…". This opens the dialog shown in Figure 8.34. Services can be added as well as deleted. When selecting "Remove service", the last added service is taken away. With the colour icon behind the service type the user can select the colour for that service in the composite coverage plot for all services. Additionally one plot for each service is created. For each map location it is estimated if this user can get service with its specified maximum transmit power and which would be its best UL server. This best server is then displayed. Locations from where the maximum transmit power of this user would not be enough to get service are displayed in black. Finally the user selects a test area and the proportion of locations within the selected area from which the MS can get service is calculated and displayed as coverage probability.

Page 129: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 129

npsw 5.0.0 1.7.2001

Figure 8.34. Dialog box for selecting the services to be analysed

Figure 8.35. The coverage probability for one additional user (here 144 kbps and 3 km/h)

Page 130: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

130 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.36. Composite UL coverage for the analysed services

In Figure 8.36 the services are ordered according to their requirements. This means, that if in one map pixel a certain service from the colour bar is served, all services which are in the colour bar below that service are served, too.

8.18.5 Downlink dedicated channel coverage

By selecting "Area coverage→Downlink dedicated channel coverage→ calculate" the analysis for the downlink dedicated channel is started. From menu "Area coverage→Downlink dedicated channel coverage→ parameters…" the user enters the parameters (bit rate, MS speed, maximum link power, CPICHToRefRabOffset and the coverage target) for a test mobile with the dialog shown in Figure

Page 131: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 131

npsw 5.0.0 1.7.2001

Figure 8.37. Dialog to enter the DL DTCH coverage analysis parameters

For the maximum link power and for the CPICHToRefRabOffset, the values specified in the base station data file are used. They can be individual for every cell. However in the dialog box there is the possibility to override these values by a common one by ticking on the appropriate selections and entering the value in the appearing edit box.

After selecting "Calculate" in each map pixel the needed link power from the best server is calculated as specified in Section 6.6 and displayed. Pixels where the maximum link power is exceeded are displayed in black. The proportion of locations within the selected area from which the MS can get served is calculated and displayed as coverage probability.

Figure 8.38. The needed transmit power of a downlink user with 64 kbps and 3 km/h

Page 132: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

132 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

In addition to this area plot the CDF of the required link powers for the whole selected area and for the coverage area of selected base stations can be displayed if wanted. For the whole area or for each selected base station a separate plot is generated showing in the upper half the CDF of the scaled link powers relative to the CPICH power and in the lower half the CDF of the absolute link power in dBm. The red lines indicate the needed link power to get the target coverage probability. From this value the parameter CPICHToRefRabOffset can be estimated.

Figure 8.39. The cumulative downlink power distribution for the user of Figure 8.38 for the whole

selected area and the estimated needed power for a target coverage probability of 95 %

Page 133: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 133

npsw 5.0.0 1.7.2001

Figure 8.40. The cumulative downlink power distribution for the user of Figure 8.38 for the

coverage area of BS1 and the estimated needed power for a target coverage probability of 95 %

8.19 Tracing a MS

By choosing "MS Trace" from the main npsw window, a dialog box opens where a tracing resolution and a number of traces can be chosen. After this a window with the map pops up and with mouse clicks a route can be entered along which the MS can be traced. For each pixel along the route in the tracing resolution the RX level of the strongest CPICH and of the (selected number of traces – 1) strongest neighbour CPICHs over the route is displayed in the colour of the corresponding base station from the best server plot in downlink. An example for a MS tracing can be seen in Figure 8.41 - Figure 8.43.

Page 134: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

134 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Figure 8.41. The route along the MS was traced

Figure 8.42. 6 average strongest received CPICHs for a traced MS (from npsw 3.0.0)

Page 135: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 135

npsw 5.0.0 1.7.2001

Figure 8.43. The 2 strongest received CPICHs in each pixel for a traced MS (from npsw 5.0.0). Only the best and the second best servers are displayed, but any number of neighbours is possible.

Thecolour is from the best server plot in downlink

Page 136: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

136 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

9 Items for further study and improvement of the tool This chapter lists some ideas what could be topics to further improve the quality of the tool. Not all might however be implemented to further versions: • Add stabilise criterion for supported MSs to break criterion

− Support for more than 2 carriers − Multi bearer analysis − Additional load reduction methods for e.g. link adaptation − Hard and code blocking support (mixed services, IF-HO reason)

• New link performance tables for SRC − Support for smart antennas − Maximum active set size, neighbour lists and absolute threshold for neighbour cell

measurements whether BS should be included into AS − Support for analysis of other common channels (e.g. downlink shared channel

DSCH, RACH, …) • HCS • Idle mode parameter support for multicarrier • Analysis for compressed mode • Three dimensional MS distributions • Multisystem version • IP-RAN effects • Repeaters

Page 137: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 137

npsw 5.0.0 1.7.2001

10 References [1] 3GPP, Technical Specification 25.101, UE Radio Transmission and Reception (FDD)

[2] Y. Okumura et al. “Field Strength and its Variability in UHF and VHF Land Mobile Radio Service”, Rev. Elec. Comm. Lab., Vol. 16, 1968

[3] M. Hata, “Empirical Formula for Propagation Loss in Land Mobile Radio Services”, IEEE Transactions on Vehicular Technology, Vol. VT-29, August 1980

[4] A. J. Viterbi, CDMA - Principle of Spread Spectrum Communication, Addison-Wesley, 1995

[5] M. Wallace, R. Walton, “CDMA radio network planning”, IEEE Third Annual International Conference on Universal Personal Communications, Sep. 27 - Oct. 1 1994, San Diego, California, USA, Radio Systems Department, GTE Laboratories, Waltham, MA, USA

[6] A. Sampath et al. “Erlang Capacity of a Power Integrated Voice and Data CDMA System”, IEEE 47th Vehicular Technology Conference Proceedings, Vol. 3, May 1997

[7] "Guidelines for Evaluation of Radio Transmission Technologies for IMT-2000", Recommendation ITU-R M.1225, 1997

[8] S. V. Hanly "An Algorithm for Combined Cell-Site Selection and Power Control to Maximize Cellular Spread Spectrum Capacity", IEEE Journal on Selected Areas in Communications, Vol.13, No. 7, Sep. 1995, pp.1332-1340

[9] ETSI, "Selection procedures for the choice of radio transmission technologies of the UMTS (UMTS 30.30 version 3.1.0)", Nov 1997

[10] K. Sipilä, J. Laiho-Steffens, M. Jäsberg, A.Wacker, Modelling the Impact of the Fast Power Control on the WCDMA Uplink, Proc. of the 49th IEEE VTC Conf., Houston, Texas, May 1999, pp. 1266-1270.

[11] K. Sipilä, M. Jäsberg, J. Laiho-Steffens, A.Wacker: Soft Handover Gains in a Fast Power Controlled WCDMA Uplink, Proc. of the 49th IEEE VTC Conf., Houston, Texas, May 1999, pp. 1594-1598.

Page 138: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

138 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

[12] K. Sipilä, Z. Honkasalo, J. Laiho-Steffens, A. Wacker: "Estimation of Capacity and Required Transmission Power of WCDMA Downlink Based on a Downlink Pole Equation ", Proceedings of VTC 2000 spring, Tokyo, Japan, May 2000, pp. 1002-1005.

[13] J. Laiho-Steffens, M. Jäsberg, K. Sipila, A. Wacker, A. Kangas, "Comparison of three diversity handover algorithms by using measured propagation data", Proceedings of VTC 1999 fall, Houston, Texas, May 1999, pp. 1370 -1374.

Page 139: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 139

npsw 5.0.0 1.7.2001

A. Table of modules

Table 10.1. Modules used in npsw 5.0.0 tool

Name: Short description: AdjustBsTxPowers.m bsTxPower adjustment after the DL step in

iteration. AntPattern.m Calculates the losses when not transmitting in the

main lobe direction of the antenna. AntRead.m Reads an antenna pattern from a file. BSdefault.m Creates a base station with a default parameter set. BSedit.m Starts the base station editing window. BSparam.txt This is the default base station parameter file. BSplot.m Plots the base stations into the main map or a

graphical output. BSpos.m Used for entering the base stations' positions when

editing the network layout. BSread.m Reads the base station parameter file bsParamFile. BSselect Displays a dialog box used for entering selection of

BS(s). BSshow.m Displays the parameters of the selected base station

in the editing window. BStxPowAlloc.m Calculates the initial TX powers of the base

stations. BSwrite.m Writes all the base station parameters to the file

bsParamFile. BestServerDL.m Calculates the best server in downlink. BestServerUL.m Calculates the best server in uplink for mobiles. BestServerULArea.m Calculates the best server in uplink for the whole

area.

Page 140: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

140 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Name: Short description: CPICHPowerAlloc.m Allocates the CPICH transmit powers. CalcActiveSet.m Returns a matrix holding the active BS-MS

connections. CalcCoSited.m Determines co-sited cells. A minimum distance can

be specified when cells are considered co-sited. CalcCovPCCPCH.m Calculates the coverage probability of the PCCPCH

channel for a given parameter set. CalcCovPCPICH.m Calculates the coverage probability of the CPICH

channel for a given parameter set. CalcCovPDL.m Calculates the coverage probability for DTCH in

DL for a given parameter set. CalcCovPUL.m Calculates the coverage probability of DTCH in UL

for a given parameter set. CalcEcIoM.m Calculates the Ec/I0 matrix. CalcIntDL.m Calculates the interference in downlink. CalcIntUL.m Calculates the interference in uplink. CalcLinksPerService.m Calculates for each cell the number of links for

each service. CalcMsEbNoDL.m Calculates the speed and data rate dependent

received Eb/N0 for the MS. CalcMsEbNoUL.m Calculates the speed and data rate dependent

transmit Eb/N0 for the MS. CalcMsHeadRoom.m Calculates the needed headroom in UL due to TPC

as a function of the MS speed. CalcMsSHOGainsDL.m Calculates the SHO gains in DL for MSs. CalcMStx.m calculates the MS transmit powers including all the

speed / data rate / and SHO dependencies and checks for carrier transition in UL outage.

CalcMsTxPowRaise.m Calculates the average power rise for the MS due to following the fast fading as a function of the MS speed.

CalcOrthogonality.m Calculates the orthogonality in DL depending on channel and speed (from lookup tables).

CalcSHO.m Calculates the SHO factor. CalcSHO2.m Recalculates SHO connnections for MSs, which

have changed the carrier. CalcSHOarea.m Calculates the SHO area. CalcShoGain.m Calculates the SHO gain in UL and DL as a

function of MS speed and level difference in the 2 strongest links.

CalcSiteLinks.m Calculates the number of links per site when checking for hard blocking.

CalcThroughput.m Calculates the actual throughput in UL and DL, i.e.

Page 141: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 141

npsw 5.0.0 1.7.2001

Name: Short description: the sum of the data rates of all users connected to a cell.

CalcULPowerMap.m Calculates received power from each pixel to every base station.

CalcVoiceActivityDL.m Reads the activity factor of a MS according the service it uses in DL from the link performance table.

CalcVoiceActivityUL.m Reads the activity factor of a MS according the service it uses in UL from the link performance table.

Calcm_RDL.m Calculates new values for m and R in UL. Calcm_RUL.m Calculates new values for m and R in DL CheckCPICHCoverage.m Collects the MSs to change carrier or which are to

be put to outage. CreateChannelMap.m Allocates the channel type for each network pixel

and assigns channel and service dependent variables to the mobilestation structure.

CreateLinkPerf.m Reads the link performance tables. CreateLinklosses.m Either calculates the linkloss matrices or loads pre-

calculated data. CreateTraf.m Creates the user and data rate maps. Disp_i.m Displays the other to own cell interference ratio. DispBestServDL.m Displays the best server in downlink, i.e. which

CPICH is received with highest level. DispBestServUL.m Displays the best server in uplink, i.e. BS to which

minimum transmit power is required. DispBSconn.m Displays all DL connections of selected base

stations. DispBsTxPower.m Displays BS TX power statistics. DispCCPCHCovParamMenu.m Displays the dialog box for entering the parameters

for coverage analyses of CCPCH. DispCPICHCovParamMenu.m Displays the dialog box for entering the parameters

for coverage analyses of CPICH. DispCPICHCoverage.m Displays CPICH coverage area for a single BS,

composite CPICH coverage for selected BSs and composite CPICH coverage for all cells.

DispCarr.m Displays the number of carriers together with the best server in UL.

DispCompCovUL.m Displays a composite coverage plot for specified services in UL.

DispDLEbNo.m Displays the DL Eb/N0s of MS after iteration as a histogram.

DispD_SHO.m Displays the combined SHO area together with the

Page 142: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

142 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Name: Short description: dominance area.

DispDLCovParamMenu.m Displays the dialog box for entering the parameters for coverage analyses of DL DTCH.

DispGenericCov.m Generic function to plot area coverage probabilities. DispLinkloss.m Displays link losses. DispLoad.m Displays the total (own and other carrier/operator)

loading and the dominance area. DispLoadOwn.m Displays the own operator loading and the

dominance area. DispMSconn.m Shows to which BSs a MS is connected in DL. DispMsRxPower.m Displays a histogram of the total wideband RX

powers of MSs. DispMSTraceParamMenu.m Displays the dialog box for entering the parameters

tracing a MS along a selectable route. DispMsTxPower.m Displays a histogram of the transmit powers of

MSs. DispPPMenu.m Displays all post processing menus. DispRxLev.m Displays the received power from each MS at each

BS. DispSHO.m Displays the SHO overhead factor together with the

dominance area. DispStatus.m Displays the status text into the main window. DispTraffic.m Displays the 'sum of the data rates' map, i.e. the

total amount of bits in every pixels and the average data rate per cell with the best server in UL. Also the throughput in UL and downlink are displayed.

DispULCovParamMenu.m Displays the dialog box for entering the parameters for coverage analyses of UL DTCH.

DispULEbNo.m Displays the UL Eb/N0s of MS after iteration as a histogram.

DispUserALL.m Displays the number of initial users per pixel. DispUserDeltaGeneric.m Displays all the users which are not served due to

the given outage reason, indicating bit rates by different icons and colours.

DispUserInit.m Displays the initial user distribution. Users are marked according the bit rate they are using.

DispUserLeft.m Displays the distribution of the users left in after UL and DL iteration, i.e. the served users. Users are marked according the bit rate they are using.

DispUserNotServed.m Creates and displays the not served user map, i.e. all users, which are in outage

DispUserServed.m Displays the 'user' map, i.e. users, which after DL iteration are using carrier 1 or 2.

Page 143: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

npsw – A Matlab® Implementation of a Static Radio Network Planning Tool for WCDMA 143

npsw 5.0.0 1.7.2001

Name: Short description: DistTraf.m Distributes users uniformly in network area. DoIFHO.m Updates SHO, powers, channel matrices and IF-HO

counters after MS has changed carrier. DoSaattohoito.m Puts the MSs permanently to outage. InitialCarrierSelection.m Makes the initial carrier selection according to

CPICH strengths. InitializeIteration.m Does preparations for the iteration phase. lin2log.m Converts linear to logarithmic data. linklossname.mat Holds the matrix of the link losses to be imported. log2lin.m Converts logarithmic to linear data. LPdist.m Displays the link powers sorted for distance. mapini.m Sets initial parameters of the map. mapname.mat Holds the imported digital map and the colour map. mapwin.m Displays the map window. mob_inside.m Checks whether a MS or a location is within a

given polygon. MSgener3.m Let's the user add or delete MSs from a given MS

parameter file within a selectable polygon. MSparam.txt Is the default mobile station parameter file. MSread.m Reads the mobile station parameter file. MSselect.m Displays a dialog box used for entering selection of

MS(s). MSwrite.m Writes all the MS parameters to the file

msParamFile. npsw.m THE GREAT APPLICATION npswini.m Sets initial parameters for the npsw application. npswsys.m Sets system parameters for the npsw application. pedALinkPerfTablesNew.m Loads all the tables from link level simulations to

set different speed, data rate and link level difference dependent parameters for the ITU Pedestrian channel.

PerfDefault.m Creates a performance structure holding default values.

PerfWrite.m Writes the performance structure to the specified or a default file.

Poly1.m Used in connection with Polygon.m to enter a polygon by mouse clicks with "rubber band" method.

Polygon.m Used to enter a polygon together with Poly1.m. PolygonGame.m Loads the previous used polygon from disk or gives

the user possibility to draw an own one. This is needed in several display functions of npsw.

previousPolygon.mat Stores the previously entered polygon. If the

Page 144: MATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK PLANNING ... · PDF fileMATLAB IMPLEMENTATION OF A STATIC RADIO NETWORK ... Implementation of a Static Radio Network Planning Tool

144 Radio Network Planning and Optimisation for UMTS – Accompanying documentation

npsw 5.0.0 1.7.2001

Name: Short description: variable previousPolygonFlag is set unequal 1, the successive coverage analysis uses this stored polygon. Also the result of the previous checking if pixels are within this polygon are stored together with the total amount of pixels. Naturally if the network area changes the previous polygon should not be used again.

previousService.mat Stores the previously analysed services in UL, their speeds, maximum allowed transmit powers and colour codes.

ReduceBStxPower.m Limits the powers per link and checks whether total BS transmit powers are exceeded. Takes links and/or MSs to outage if necessary.

ReduceLinks.m Reduces the number of links of a cell in case of hard blocking.

ReduceLoad.m Reduces the load of a cell by putting MSs to carrier 2. Calls ReduceLinks.m in case of hard blocking.

RlbDL.m Calculates the radio link budget in downlink. RlbUL.m Calculates the radio link budget in uplink. SaveResults.m Saves the specified results into a text file. Scaling.m In certain plots lets the user select the scaling and

the used colour map. SelectServices.m Let's the user select the services to be analysed in

UL coverage probability analysis. SHOproba.m Calculates and displays the probability of n-branch

SHO and type of handover for the users and the area.

Trace.m Traces a MS along a given route and plots the received CPICH signal strength from all base stations.

UpdateChannelMatrices.m Updates channel matrices after carrier transitions. twoTapLinkPerfTables.m Loads all the tables from link level simulations to

set different speed, data rate and link level difference dependent parameters for a channel with two equally strong, individually Rayleigh fading taps.

vehALinkPerfTablesNew.m Loads all the tables from link level simulations to set different speed, data rate and link level difference dependent parameters for the ITU Vehicular_A channel.

waterAreaFile.mat Holds the water area in case a digital map has been imported.