The overall simulation process for setting a suitable network in the case that the real data is used is explained below. To achieve a global source code
which involves both functionalities (handling real data layout or theorical pathloss calculation), the structure of the initial MATLAB code has been kept. Besides some necessary new functions, the functionalities already ex- isting but adapted for the new purpose have been integrated in the original source code. Thus, the simulation mode can easily be chosen just by setting the according variable at the beginning. Let us now list the main steps of the initial procedures of the simulator:
1. Reading data: as mentioned before, the option for reading the data files can be enabled in the load settings function. In such case, the function xf read out data works on the prediction files and extracts the header of the files, with the information before explained, and the in- formation about the pathloss. In the case that reading also the two left files is desirable, this function calls also read bts csv and read site csv in order to extract their respective information.
For the overall process, each parameter is stored in a structure af- ter calling these functions in order to be used next by the necessary, pertinent functions during all the simulation.
2. Node-B positions: following the same process than the initial sim- ulator, the function which locates the Node-Bs is called first. In this function, the base stations are situated accordingly to the stored in- formation extracted from the pedestrian files, or it can be done in the original way (hexagonal layout). Figure 4.3 shows the positions of the twelve Node-Bs belong to the twelve prediction files. Notice that some coordenates are taken by two stations; this is because the position is the same but not the height.
3. Provisional grid positions: the next step is to generate the grid positions where the users will be situated. As occured with the Node- Bs, the new grid is calculated in the original function accordingly to the active option. If the real data are being used, we generate a provisional grid around the center of the global map, where the strongest Node-B (which is the one providing the lowest pathloss possible) is situated. This is explained graphically in next steps.
4. Pathloss: in the initial simulator, the pathloss was theorically calcu- lated distinguishing between deterministic pathloss as function of the UE-NodeB distance and as function of the antenna gain pattern (cal- culated accordingly to the COST 231 Hata model [13]), and stochastic pathloss, based on shadow and fast fading.
Figure 4.3: Node-Bs positions and respective prediction files.
In this step of the simulation, only the deterministic pathloss as func- tion of the antenna gain is calculated since the rest of the contributions are included in the prediction files. It is generated for each one of the three sectors as in the first version of the simulator.
If the pathloss is set to be read-in from the prediction files, we ex- tract it from the prediction files by using a function which extracts the information according to the structure of the files. This function reads and stores the pathloss for every pixels in each one of the twelve virtual maps. Next, we extract the pathlosses corresponding to the provisional grid created before, and it is summed up to the antenna gain (in dB) calculated in order to obtain a final pathloss in all the grid positions. Finally a 3D-matrix with the final pathloss for every grid position, sector, and Node-B is generated.
5. Find main BS and sector: once we have the pathloss matrix, the next step is to find the main sector and Node-B, which means the Node- B and sector where the lowest pathloss occured (within the region of
interest), and that way we can set a Node-B and pathloss information for the simulation process.
For this purpose, there is a function which reads the value of every position in the 3D-matrix, and extracts for every pixel which one of the twelve files (Nodes-B) and sector generates the minimum pathloss. This information is kept in a new matrix and then we read every po- sition of it and we count which Node-B and sector is repeated more times in that matrix (these will be the main BS and sector for the simulation).
6. Generate final grid positions: this step fixes the grid positions that can be generated. The new grid consists of those positions of the pro- visional grid, where the lowest pathloss was generated by the main BS (target sector) simultaneously.
Figure 4.4 shows the situation so far, where the provisional grid in blue, the main Node-B and sector and finally the definitive grid in green (which defines the sector shape) are illustrated.
Figure 4.4: Provisional grid, main BS and sector shape.
7. Generate users positions: this is the last step in the new simulation process. The final goal of the process is setting up a complete network
suitable for simulation. Once the grid positions are defined, users are located randomly (uniformly) using the same functions as utilized in the initial version. An example in which a zoom of the previous figure after the users are generated (plotted in black) is shown in Figure 4.5.
Figure 4.5: Last step: user positions located randomly and uniformly within the limits of the generated sector (green points).
For a better visualization, Figure 4.6 shows a general overview of the network setting process when the real data layouts are handled, summarizing the steps before explained in a diagram.
Chapter 5
CQI Mapping Optimizations
This chapter explains more deeply the CQI mapping in HSDPA performance. Section 5.1 includes an introduction and the CQI basis. In Section 5.2 the mapping proposal by the 3GPP specifications is explained, and Section 5.3 describes the enhancements in the SISO HSDPA Simulator, where the object of this part of the work and the achieved results are explained.