TELECOMMUNICATION LABORATORY

SIMULATION AND TOOLS FOR TELECOMMUNICATIONS 521365A

TIETOLIIKENTEEN SIMULOINNIT JA TYÖKALUT 521365A

Simulation Exercise Instructions

Document History:

28-Feb-2006 Update for year 2006

20-Feb-2007 Update for year 2007

07-Apr-2008 Update for year 2008

19-Mar-2009 Update for year 2009

10-Mar-2009 Update for year 2010

18-Mar-2011 Update for year 2011

14-Feb-2012 Update for year 2012
1 Introduction and information sources

The purpose of this document is to describe the simulation exercise of the Simulations

and Tools for Telecommunication –course.

The exercise will be done by using Simulink simulation software of MATLAB environment. Introduction to Simulink can be found in

http://www.mathworks.com/access/helpdesk/help/toolbox/simulink/

The exercise should be done in groups of two students. However, if you are unable to find a partner, the exercise can also be done alone. Although the exercise can be done in pairs, each student prepares individually a report of the results and findings of the exercise. The exercise may be also part of your candidate work.

The language of the report should be either Finnish or English and the language must remain the same throughout the whole report (i.e. no mixed language versions). Apart from that, students have a free choice on choosing the report language. Apply the candidate thesis writing instructions STO_kandidaatintyön_ohjeluonnos.pdf available in

http://www.ee.oulu.fi/Opiskelijat/Lomakkeet/UusiTutkintorakenne/KandiValmistuminen

on relevant parts when writing the report. The extent of your report will naturally be narrower than thesis, so you don’t need to have abstracts, preface, or appendices. Instead, cover, list of symbols and abbreviations, contents, introduction, conclusions and references are required. Remember that used abbreviations should be spelt out the first time they appear in the text. It is important to use correct citations, as that is one of the most fundamental principles of scientific writing. Other important aspect is completeness of your report, i.e., it should be possible to read and understand your report as such without reading the instructions (this document). Please check the text in order to avoid misspelling. Also make sure that you give answers to the questions presented in each task. There are also a number of introductory questions on this document. The purpose of these questions is to give you some directions about what you should be looking for in your simulations and what to consider in your report. Take your time to think and/or simulate the introductory questions. However, you don’t need to give direct answers to the introductory questions in your report. Please return your report at Word-format (.doc, .docx, .rtf).

Before you return your report, please check that you have

·  cover

·  list of symbols and abbreviations

·  contents

·  introduction

·  conclusions

·  references

·  spelled out all abbreviations in the first time they are used in the text

·  readable and understandable text with no writing mistakes

·  given answers to the questions presented in each task

2 Learning targets

The target of this exercise is to learn:

- Basic principles of telecommunications simulation.

- Sampling, Monte Carlo simulation, convergence of results, simulation accuracy

- Use of one common simulation tool (Matlab+Simulink)

3 Practical steps to simulations

3.1 Simulation software licences

Matlab/Simulink uses floating licence system in the department of electrical engineering computer network. It means that only limited number of Matlab/Simulink sessions can be active at the same time, even if the software is installed on all computers. If Simulink and/or Communications Blockset do not start, check the number of currently available licenses using Unix command:

lmstat -c /local/etc/licenses/license.matlab -a | more

If all licenses are in use, try to run your simulation at a less congested time. If the congestion seems to be permanent, inform the exercise tutor.

3.2 Creating a simulation model

Open Matlab, start Simulink writing simulink. You can create a new Simulink model for your specific problem following the route:

file ® new ® model in Simulink Library Browser. Notice that you have to save the model file in order to retrieve it during later sessions. You also have to specify and store the simulation parameters required in your model.

You can get BER using BERtool, start writing bertool in Matlab. There, you can define Eb/N0-range you want to simulate. Note that “BER variable name” in BERtool has to be same than “Variable name” in your simulation model.

Employ Simulink reference manuals to draw hierarchical simulation models step-by-step.

3.3 Simulation Results

When you are running simulations and creating plots, like performance curves or scatter diagrams, remember to save the plots into a file so that you can retrieve them when you later prepare your report.

If possible, compare your obtained simulation results to theoretical results (derived from analytical expressions), and plot those curves into the same plot to judge whether your results are reasonable or not. This can be also done at some post-processing phase.

4 Simulation tasks

Simulation tasks are described below. Report can be done in Finnish or English. Please check the text in order to avoid misspelling. If you don’t understand details, come to ask. Give an answer in your report for each question presented below. Include used parameters, figures about the simulation models and figures of BER/SER vs. SNR (Eb/N0, Es/N0) -curves, scattering diagrams (I/Q), signal vs. time plots, spectral density vs. frequency plots, etc., to explain what you have done and what information you have gained (typical system engineering work, that you might do in industry). In figures, remember to add what do you have at x- and y-axis, and use different markers (*,+,o etc.) to different curves.

4.1 Verify your simulation model

An important aspect on simulations is the verification of the simulation models. In other words, you should check that each module produces a result which is correct. Only this way you can assure that when the modules are put together, the final result from your simulation model is correct.

In this task you verify the correctness of Simulink AWGN channel module.

Introductory Question:

How do you verify that noise is white and Gaussian?

Task 1:

Verify the correctness of Simulink AWGN channel module.

4.2 Random generator seed and result convergence

To get started on this task, build first a simulation model for Monte Carlo “dice machine.” Your “dice machine” is a simulation model which gives out a random number {1, 2, 3, 4, 5, 6}. Run your “dice machine” using various simulation lengths and random generator seed values.

Introductory Question:

What is the mean value of your “dice machine” simulation results after one, two, three, and more simulations? When you repeat the dice simulation with different random number generator seeds, what is the impact of the seed to your “dice machine”?

Task 2:

Study the influence of data bit source random generator seed value (i.e. initialization of random bit generator) on BER-value estimation.

- Create a model composed of a random data bit source (equal probabilities for bits 0 and 1), a BPSK modulator, an AWGN-channel and a BPSK demodulator.

- Calculate BER for one chosen Eb/N0 –value for several different seeds (at least 5 different randomly selected seeds) versus number of simulated symbols (i.e. perform an experiment like in Fig. 2.5 of course book Simulation of Communication Systems, Modeling, Methodology, and Techniques). Choose the values of interest for Eb/N0 and BER so that the simulation time does not become too prohibitive and you can see the influence of seed selection (try to find “bad seeds” to see the difference). Include a figure similar to the above mentioned one into your report (you probably have to plot it afterwards at post-processing/analyzing phase of results, since you’ll get just numbers in simulation).

- In the case of independent errors and error rate (ER) < 1, the relative standard deviation of the simulated error rate can be expressed as s/ER = ne-1/2, where ne is the number of encountered errors. Based on this, determine the required number of errors in the simulation to obtain a relative standard deviation of 10% for the BER.

- Finally, plot BER vs. Eb/N0 with a randomly selected seed and compare to the theoretical BEP curve

4.3 Gray coded square 64-QAM

Introductory Question:

In Gray coded symbol constellation the “neighbouring” symbols differ only by one bit. When Gray coding is used, the “shift” of a symbol to one of the closest surrounding symbols in the constellation causes only a single bit error. What is the benefit of that?

Task 3:

- Create a simulation model composed of a random bit source, a 64–QAM modulator with Gray-coded symbols, an AWGN-channel and a 64–QAM demodulator. A good starting point to the model is Simulink example “Gray Coded 8-PSK.”

- Perform Monte Carlo simulation of BER vs. SNR and SER vs. SNR.

- Compare the results to theoretical BEP/SEP-curves.

- Compare BER and SER curves. What is the difference between BER and SER and why?

- Change the Gray coded constellation to any other constellation. What is the influence of that change on SER and BER curves?

5