You are on page 1of 5

WiMAX channel simulation

Andrew Gray Keith Harland Justin Hayes Steve Maughan


March 17, 2006
1 Introduction
This report summarises the implementation
of the physical (PHY) layer for single carrier
(WirelessMAN-SCa) Wimax for operation in
the 2-11GHz frequency band. The modules re-
quired are shown in the block diagram in Figure
1. These modules were implemented in software
and the complete system simulated. Addition-
ally, a channel model was created to allow sim-
ulation of a number of channel eects. These
channel eects include additive white gaussian
noise, path loss, time variant multipath fading
(at fading and frequency selective) and log-
normally distributed large scale fading.
Each module is discussed separately later but
a brief outline of the main reasons for each fol-
lows. Firstly, randomization is employed to min-
imise the possibility of transmission of an un-
modulated carrier[1]. Forward error correction
(FEC) coding is used to detect, and correct,
symbols which are received in error. Finally,
symbol mapping is used in order to allow exi-
ble spectrum usage. Throughout this report it
is assumed that ideal ltering and ideal Nyquist
sampling are used.
2 Implementation
2.1 Randomization
Randomization occurs at the start of the trans-
mit process. It is used primarily to minimise
the possibility of transmission of an unmodu-
lated carrier and to average the power output
through energy dispersal. It also ensures an ade-
quate number of bit transitions to support clock
recovery.
The randomizer is implemented using modulo-2
addition (2 XOR gates) and a Linear-Feedback
Shift Register (LFSR) with characteristic poly-
nomial 1 +x14 +x15. For this implementation,
the LFSR is reset to value 100101010000000 at
the start of any data input[1, pp. 356].
De-randomization is performed at the end of
the receive process and can be achieved sim-
ply by sending the data through the random-
izer again. This is because the process simply
involves XORing against the same bit sequence.
2.2 Channel coding
The FEC consists of two coding schemes: Reed
Solomon and Convolutional Coding. The Reed
Solomon coding scheme wraps around the Con-
volutional scheme such that there are two sepa-
rate layers. The Convolutional coding forms the
inner layer. The encoder is a simple rate r =
1/2, k = 7 convolutional encoder and the de-
coder is implemented by the Viterbi Algorithm.
The decoder also decodes data that contains
dummy bits as a result of depuncturing.
The specication requires a constraint length k
= 7 and requires support for rates r = 1/2, 2/3,
3/4, 5/6 and 7/8. The industry standard poly-
nomials 171
O
and 133
O
are used to generate two
output bits from the 7 bit shift register of the
encoder. The convolutional encoder emulates a
shift register and stores a new bit on each cycle.
The polynomials dene which bits are tapped o
and those values are added modulo 2. This pro-
duces the two output bits which implements a
rate r = 1/2 convolutional encoder. Higher code
rates are achieved using puncturing which is im-
plemented separately.
The decoder uses the Viterbi Algorithm. The
implementation was developed independently
with guidance from [2] on the concepts of the
algorithm. The algorithm is based around six
main data structures which are:
input table - this tells the algorithm what
1
2.3 Puncturing 2 IMPLEMENTATION
Figure 1: Block diagram of the downlink PHY.
data bit is required to get from state A to
state B
output table - this tells the algorithm what
output bits are produced when leaving state
A with data bit I
next state table - this tells the algorithm
the state number B having left state A with
data bit I
state history table - this is where the algo-
rithm keeps a record of the state A preced-
ing state B
accumulated error metric table - this is
where the algorithm stores the error met-
rics that are accumulated as it works its
way through the decoding trellis
traceback table - this is where the algorithm
stores a list of states visited when tracing
back through the state history table
A major design decision was made to include
another table called the valid table, which has
two purposes. It stores whether, in the consider-
ation of a specic time slice, a target state B has
had an accumulated error metric stored for one
of the two transitions entering this state. This
is called the updated ag. It also stores whether
a state is valid. A state is said to be valid if its
accumulated error metric is based on the result
of a transition and is greater than or equal to
0. Initially all states are set to be invalid and
have an error metric of 1. The 0 state (start-
ing state) is made valid and initialised with an
accumulated error metric of 0. This allows the
rst k1 time slices to use the tree-like appear-
ance of the beginning of the trellis and prevents
possible ambiguity in the decoding process.
The implementation considers every valid state,
and looks at the possible accumulated error met-
ric given each possible transition from this state.
If the accumulated error metric calculated is ei-
ther the rst for the target state in the following
time slice, or is smaller than the alternative for
a transition entering the target state, then this
value is stored in the accumulated error met-
rics table and the state number is recorded in
the state history table. Traceback is run at the
end of each iteration after the rst 5k time slices
have been processed. Traceback simply chooses
a winning state with the lowest accumulated er-
ror metric and traverses the state history table
to nd all the states visited to get to the winning
state. The input table is then used to determine
which data bit must have been input to the en-
coder to get between the rst two states stored
in traceback.
The convolutional encoder was veried by com-
paring results to both a C implementation and
also by manual examples on paper. The decoder
was veried by decoding a previously encoded
data stream and ensuring the results were iden-
tical.
2.3 Puncturing
Puncturing gives increased exibility of the sys-
tem without signicantly increasing complexity.
Hence for this implementation the same convo-
lutional encoder/ Viterbi decoder with coderate
1/2 can be used whilst increasing coderate for
the channel.
A puncturer is implemented after the convolu-
tional encoder in order to remove certain bits
from the data sequence. This has the eect of in-
creasing the coderate. Coderates 1/2, 2/3, 3/4,
2
2.5 Channel modelling 2 IMPLEMENTATION
Figure 2: BPSK Constellation maps
5/6 and 7/8 are possible using the puncture pat-
terns specied in [1, pp. 359].
A depuncturer, implemented after the Viterbi
decoder, inserts dummy bits (zeros in this imple-
mentation) where bits have been removed by the
puncturer, restoring the original data length.
2.4 Downlink Modulation
An important property of downlink modulation
schemes is their spectral and power eciencies.
Spectral eciency is a measure of information
transmission rate per Hz of bandwidth used. It
is desirable to transmit the maximum possible
information rate in the minimum possible band-
width. To improve the spectral eciency of the
airlink, the system uses a multilevel modulation
scheme. Supported modulation types for the
SCa PHY are BPSK, QPSK, 16-QAM, 64-QAM
and 256-QAM.
BPSK changes the carriers phase in accordance
with the baseband digital data. This is shown
graphically in Figure 2 where MAP0 is used for
even-indexed bits, while MAP1 is used for odd-
indexed bits. Only one symbol is mapped to
each bit so the spectral eciency of BPSK is
1bit/s/Hz. QPSK may be thought of as 4-PSK
and has twice the spectral eciency of BPSK[3].
The constellation diagram for QPSK is shown in
Figure 3.
If the symbol alphabet size is made larger, the
spectral eciency is further improved. This is
multisymbol mapping and can be thought of as
a bit mapping process where n binary bits are
mapped to a single symbol. It is also possible
to introduce amplitude as well as phase mod-
ulation. A 16-QAM signal has two amplitude
levels and two distinct phase states in both the
real and imaginary channels. Two bits at a time
are taken by both the I and Q channels so that
Figure 3: QPSK Constellation maps
4 input bits dene each of the 16 symbols giv-
ing a spectral eciency of 4bits/s/Hz. 16-QAM,
64-QAM and 256-QAM are supported and these
constellation maps are given in [1, pp. 371375]
A comparison of the dierent modulation types
is given in Table 1. Note that the maximum
possible spectral eciency assumes that ideal
ltering is employed prior to the I and Q chan-
nel multipliers. C/N, the carrier to noise ratio,
and E
b
/N
0
, the ratio of bit energy to noise power
spectral density, are used to compare the power
eciencies of the dierent schemes. The modu-
lation constellation can be selected by the user
depending on the quality of the RF channel. If
a high throughput is desired, a more complex
modulation scheme can be used. However, if
the channel degrades excessively over time, data
transfer will not be reliable and a simpler con-
stellation mapping should be used.
2.5 Channel modelling
A statistical baseband channel model has been
developed which simulates the eects of a wire-
less channel under a variety of conditions.
The performance of a communication system is
bounded by the noise power at the receiver and
this is modelled with an additive white gaussian
noise (AWGN) channel. The AWGN channel
assumes an ideal, non-dispersive path with con-
stant gain between the transmitter and receiver,
where the ratio of received signal power to re-
ceiver noise is determined by the term E
b
/N
0
.
A number of channel eects have also been im-
plemented. For simulation of a mobile receiver
in a non line-of-sight environment, path loss,
large scale fading/shadowing and multipath fad-
ing can be modelled. Fading is the uctuation
3
3 EXPERIMENTS
Modulation Max. spectral eciency (bit/s/Hz) C/N ratio (dB) E
b
/N
0
(dB)
BPSK 1 10.6 10.6
QPSK 2 13.6 10.6
16-QAM 4 20.5 14.5
64-QAM 6 26.6 18.8
Table 1: Comparison of various digital modulation schemes (P
b
= 10
6
, T
0
B = 1.0)[3]
in the received signal envelope due to motion of
the transmitter, receiver or of scatterers in the
propagation path. For stationary environments,
a model based on the recommended[4] channel
model for a line-of-sight, point-to-multipoint en-
vironment is used.
Large scale fading is caused by changes in re-
ceiver position on the scale of a few tens of
meters. It is due to the substantially dierent
paths taken by radio signals travelling between
a transmitter and receiver, around large physi-
cal obstacles such as hills or groups of buildings.
A statistical model for large scale fading is given
in [5] as a log-normal variation of the received
signal power, about the mean received power;
this has been implemented here.
Small scale fading is mainly due to multipath re-
ections from nearby scatterers, arriving at the
receiver with random amplitudes and, in partic-
ular, phase shifts, which sum constructively or
destructively. This results in signicant uctu-
ations in received signal power, of up to -40dB.
Furthermore, these variations occur at roughly
half-wavelength spacings, so receiver movement
of only tens of centimeters can have a signicant
eect on the received signal power.
The statistical properties of the multipath fad-
ing envelope can be shown to have a Rayleigh
distributed amplitude and a uniformly dis-
tributed phase. As such, it is often termed
Rayleigh fading. A standard method of imple-
menting Rayleigh fading is given in [6] and in-
volves ltering complex gaussian variates by the
power spectrum of the received signal, then tak-
ing the absolute value of the result as the enve-
lope amplitude coecients. This has the eect
of introducing correlation between the gaussian
variates, and thus controls the fade rate. The
resulting Symbol Error Rate plot is shown in
Figure 4.
The basic Rayleigh fading channel was addition-
ally augmented with the capability to perform
smearing of adjacent symbols; time dispersion
0 2 4 6 8 10 12 14 16 18 20
10
15
10
10
10
5
10
0
Symbol error rate / Probability of error
Symbol error rate: Rayleigh fading vs AWGN
AWGN channel
Rayleigh channel
Figure 4: Symbol error rate of Rayleigh fading
channel, compared to Probability of error for an
ideal AWGN channel (Fd=3ms).
or Inter-Symbol Interference. This was imple-
mented by modelling the channel as a FIR l-
ter whose tap coecients are taken from ltered
gaussian sources as above.
3 Experiments
3.1 Eects
A number of channel coding performance eects
were simulated. First the eect on decoding per-
formance was investigated by altering the size of
the state history table and comparing the delta
of error rate. It was found as a general trend
for all coderates that the errors are reduced for
a larger state history table. This has the disad-
vantage of increased computation time on a per
bit basis, but also that the tail bits at the end of
the decoding trellis become less accurately de-
codable as the block size becomes inecient.
The second eect was that of inserting regular
bit errors. This was achieved simply by ip-
ping the value of a coded bit every n bits and
4
REFERENCES
Figure 5: Eect of inserted errors on coderate
performance.
observing the resulting errors and more signi-
cantly, the dropo point at which each particu-
lar coderate is able to correct all errors. It was
found that lower code rates have a lower dropo
point, shown in Figure 5, resulting in better tol-
erance to more errors for a given block. The
relationship between coderate and absolute safe
dropo point was found to exhibit an exponen-
tial characteristic; higher coderates resutled in
a decrease in the number of correctable errors
per block.
3.2 Limitations of methodology
The simulations above are limited in applicabil-
ity to real-world systems as the error injection
process is regular and deterministic. Further-
more, no attention is paid as to whether injected
errors lie on dummy bits; this can decrease the
actual insertion rate.
3.3 Improvements
Given time constraints, a Reed-Solomon coder
was not implemented; it is expected that per-
formance gains could be obtained however this
would require further investigation. Further-
more, an interleaver would have improved re-
liability as it would disperse burst errors giv-
ing protection against impulsive noise. Finally,
the optimal compromise between the size of the
state history table and the processing time could
be found.
4 Conclusions
This paper has presented the implementation
and simulation of a Wimax system. A number
of channel eects were investigated and coding
performance analysis was carried out. It was
found that the Rayleigh channel eects have a
signicant impact on the Bit Error Rate. Ad-
ditionally, some trends were discovered on the
performance of the Viterbi decoder.
References
[1] IEEE Computer Society and the IEEE Mi-
crowave Theory and Techniques Society.
IEEE Standard for Local and metropolitan
area networks, Part 16 (IEEE Std 802.16-
2004). The Institute of Electrical and Elec-
tronics Engineers, Inc., October 2004.
[2] Chip Fleming. Tutorial on Convolu-
tional Coding with Viterbi Decoding.
http://home.netcom.com/ chip.f/viterbi/
algrthms.html.
[3] I. A. Glover and P.M. Grant. Digital Com-
munications. Pearson Education, 2nd edi-
tion.
[4] Wei Zhang and Nader Moayeri. Recommen-
dation on Channel Propagation Model for
Local Multipoint Distribution Service. IEEE
802.16 Broadband Wireless Access Working
Group, Febuary 2002.
[5] William C.Y. Lee. Mobile Communications
Design Fundamentals. Wiley & Sons, 2nd
edition, 1993.
[6] John I. Smith. A computer generated mul-
tipath fading simulation for mobile radio.
In IEEE Transactions on Vehicular Technol-
ogy, Vol. VT-24, No. 3, pages 3940, August
1975.
5

You might also like