0% found this document useful (0 votes)
13 views

Modeling_a_4G_LTE_System_in_MATLAB_Houma (1)

Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

Modeling_a_4G_LTE_System_in_MATLAB_Houma (1)

Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 46

Modeling a 4G-LTE System in MATLAB

Houman Zarrinkoub PhD.


Product Manager
Signal Processing & Communications
MathWorks

© 2012 The MathWorks, Inc.


1
Agend

 4G LTE and LTE Advanced standards

 MATLAB and communications system design

 Case study: A 4G LTE system model in MATLAB


– Modeling & simulation

– Simulation acceleration

– Path to implementation

 Summary

2
4G LTE and LTE
Distinguishing Features
 Motivation
– Very high capacity & throughput
– Support for video streaming, web
browsing, VoIP, mobile apps
 A true global standard
– Contributions from all across globe
– Deployed in AMER, EMEA, APLA
 A true broadband
mobile standard
– From 2 Mbps (UMTS)
– To 100 Mbps (LTE)
– To 1 Gbps (LTE Advanced)

3
How is this remarkable advance

 Integration of enabling technologies with sophisticated


mathematical algorithms
– OFD (Multi-carrier transmission, large bandwidth requires attention to multipath fading)
M
– MIMO (multiple antennas)
– Turbo (near Shannon limit, e.g., near capacity channel coding)
Coding

 Smart usage of resources and (smart engineering techniques)


bandwidth
– Adaptive modulation
– Adaptive coding
– Adaptive MIMO
– Adaptive bandwidth
4
What MATLAB users care about LTE

 Academics
– Researchers contributing to future standards
– Professors
– Students
 Practitioners
– System Engineers
– Software designers
– Implementers of wireless systems
 Challenge in interaction and cooperation between these two groups
 MATLAB is their common language

5
Challenges
From specification to implementation

 Simplify translation from


specification to a model
as blue-print for
implementation
 Introduce innovative
proprietary algorithms
 Dynamic system-
level performance
evaluation
 Accelerate simulation of large
data sets
 Address gaps in the
6
Challenges
implementation
workflow

7
Where does MATLAB fit in addressing these

 MATLAB and Communications System Toolbox


are ideal for LTE algorithm and system design
 MATLAB and Simulink provide an
environment for dynamic & large scale
simulations
 Accelerate simulation with a variety of
options in MATLAB
 Connect system design to implementation with
– C and HDL code generation
– Hardware-in-the-loop verification

8
Case Study:
Downlink physical layer of LTE (Release 10)
codewords layers antenna ports

Modulation Resource element OFDM signal


Scrambling mapper
mapper generation
Layer
Precoding
mapper
Modulation Resource element OFDM signal
Scrambling mapper
mapper generation

© 2012 The MathWorks, Inc.


8
Modeling and simulation

© 2012 The MathWorks, Inc.


9
LTE Physical layer model in

 Downlink Shared Channel


– Transport channel
Turbo Channel Coding
– Physical channel

MIMO OFDMA

Adaptation
of
everything

1
LTE Physical layer model
Reference: 3GPP TS 36 211 v10 (2010-12)
in

1
LTE Physical layer model in
a0 , a1,..., aA1
Transport block CRC attachment

b0 , b1 ,...,
Code block segmentation Code block CRC attachment
bB1

Turbo Channel Coding


cr 0 , cr1,..., cr Kr 1

Channel
coding

(i) (i) (i)


dr 0 , dr1 ,...,dr D
r 1

Rate matching
MIMO OFDMA
er 0 , er1 ,..., er Er 1
Code block concatenation

codewords layers antenna ports


f 0 , f1 ,..., f G1

Modulation Resource element OFDM signal


mbling
Scra mapper mapper generation
Adaptation of everything Layer
Precoding
mapper
Modulation Resource element OFDM signal
mbling
Scra mapper mapper generation

>> Open LTE system model

1
Overview of Turbo

 Error correction &


coding technology of
LTE standard

 Performance: Approach
the channel capacity
(Shannon bound)

 Represents an
evolution of
convolutional coding

1
Overview of Turbo
 Based on an iterative
decoding scheme

1
MATLAB

=
comm.ViterbiDecod
er(… ‘InputFormat’,

1
MATLAB

= comm.QPSKDemodulator(
‘DecisionMethod’,’Log-Likelihood

=
comm.ViterbiDecoder
(…

1
MATLAB

= comm.TurboEncoder
= comm.QPSKDemodulator(
‘DecisionMethod’,’Log-Likelihood
ratio’
=
comm.TurboDecod
er(…

1
OFDM

 Orthogonal Frequency Division Multiplexing


– Multicarrier modulation scheme (FFT-based)

 Sample the spectrum at uniform intervals called sub-carriers


– Transmit data independently at each sub-carrier

 Most important feature


– Robust against multi-path fading
– Using low-complexity frequency-domain equalizers

1
OFDM & Multi-path
 Multi-path propagation leads to frequency selective fading
 Frequency-domain equalization is less complex and perfectly matches OFDM
 We need to know channel response at each sub-carrier – We need pilots

H(ω
{ℎ2, 𝑑2}
) Frequency-selective fading

G(ω)H(ω)

1
{ℎ0,
Multi-

𝑑0 }
path

{ℎ1, 𝑑1}
ω
y(n) = 𝑛= ℎ𝑛 x( 𝑛 − 𝑑𝑛)
∑𝑁

Y(ω) = H(ω)X(ω) ω

1
OFDM & Multi-path
If G(ω) ≈ 𝐻−1(ω) G(ω) Y(ω) ≈ (ω)
Frequency-domain
equalization

2
How Does LTE Implement OFDM?

Frequency
Nmax=20
48

Interpolate
vertically
(Frequency)

Resource
element

Pilots

Resource block

Interpolate horizontally
(Time)

Resource grid


0.5
2
1.5 2

Time (msec)

2
How to Implement LTE OFDM in MATLAB

Depending on
Channel
switch prmLTEPDSCH.Nrb Bandwidth = 6*numRb + mod(v+vsh, 6) + 1;

Case 25, N=512; Transmitter:


Place pilots in regular intervals

Set Frequency-
domain
Case 100, N=2048; FFT size

= mean([hp(:,1,1,n) hp(:,3,1,n)])

Create OFDM signal = mean([hp(k,2,1,:) hp(k,4,1,:)])


X=ifft(tmp,N,1);
Receiver:
2
Estimate channel by interpolating in
time & frequency

2
MIMO Overview

 Multiple Input Multiple Output


 Using multiple transmit and receive
antennas
Y = H*X + n

h1,1

ℎ11 ℎ12 ℎℎ ℎℎ
2213 32 ℎ
4233 ℎ43
h23ℎ11,42
H= ℎ21 ℎ24 ℎ34
h2,1

ℎ31 ℎ41 ℎ44


X Y

h4,4
Channel
2
Multiple Input Multiple Output

2
Where is MIMO being used?

 Several wireless standards


– 802.11n: MIMO extensions of WiFi as of 2008
– 802.16e: As of 2005 in WiMax Standard
– 3G Cellular: 3GPP Release 6 specifies transmit diversity mode
– 4G LTE
 Two main types of MIMO
– Spatial multiplexing
– Space-Time Block Coding (STBC)

2
Spatial Multiplexing

 MIMO technique used in LTE standard

 Divide the data stream into independent sub-streams and


use multiple transmit antennas

 MIMO is one of the main reasons for boost in data rates


– More transmit antennas leads to higher capacity

 MIMO Receiver essentially solves this system of linear equations

Y = HX + n

2
Y=𝐻 ∗ + 𝑛
MIMO-OFDM overview

What if 2 rows are linearly dependent?

ℎ1 ℎ2 ℎ3 ℎ4
ℎ1 ℎ2 ℎ3 ℎ4
𝐻= ℎ ℎ3 ℎ3 ℎ3
3
1 2 3 4
X ℎ4 ℎ4 ℎ4 ℎ4
Dimension =4; Rank =3; Y
H = singular (not invertible)

Time 𝑡𝑛

subcarrier

2
� V arity:
� a 1. Precode input with pre-selected V

=
l 2. Transmit over antennas based on Rank
u


e


� D
e
c


� o
m
� p

o
� s
i
S
t
i
i
n
o
g
n
u
l
a To
r avoid
singul
3
Adaptive MIMO: Closed-loop Pre-coding and Layer Mapping

Base station

Layer
Precoding(*) OFDM
Mappin
g

Channel Rank
Estimation
Rank
Indicator
Precoder
Precoder Matrix Matrix mobile
Indicator
3
Adaptive MIMO in MATLAB

 In Receiver:
 Detect V = Rank of the H Matrix V= prmLTEPDSCH.numLayers;
 = Number of layers
Switch V

 In Transmitter: (next frame)


 Based on number of layers
case 4
 Fill up transmit antennas with available out
rank= complex(zeros(inLen1/2, v)); out(:,1:2
out(:,3:4) = reshape(in2, 2, inLen2/2).';

3
Link Adaptation Overview
 Examples of link adaptations

– Adaptive modulation
 QPSK, 16QAM, 64QAM

– Adaptive coding
 Coding rates from (1/13) to (12/13)

– Adaptive MIMO
 2x1, 2x2, …,4x2,…, 4x4, 8x8

– Adaptive bandwidth
 Up to 100 MHz (LTE-A)

3
LTE Physical layer model in MATLAB

Turbo Channel Coding

MIMO OFDMA

Adaptation
of
everything

3
Simulation Acceleration

© 2012 The MathWorks, Inc.


28
Simulation acceleration options in

System Objects

Parallel
User’s Code Computing

MATLAB to C

GPU
processing

2
GPU Processing
Communications System Toolbox
GPU System objects
 Alternative implementation for
comm.gpu.TurboDecoder
many System objects take
comm.gpu.ViterbiDecoder
advantage of GPU processing comm.gpu.LDPCDecoder
comm.gpu.ViterbiDecoder
 Use Parallel Computing Toolbox to
comm.gpu.PSKDemodulator
execute many communications comm.gpu.AWGNChannel
algorithms directly on the GPU

 Easy-to-use syntax

 Dramatically accelerate simulations

3
Example: Turbo
 Impressive coding gain
 High computational complexity
 Bit-error rate performance as a function of number of iterations

=
= comm.gpu.TurboDecoder(…
comm.TurboDecoder(
‘NumIterations’, N,…

3
Simulation acceleration with GPU System

Version Elapsed time Acceleration


Same numerical results
CPU 8 hours 1.0

1 GPU 40 minutes 12.0

= Cluster of 11 minutes 43.0


4 GPUs
comm.TurboDecod
er(…
= comm.gpu.TurboDecoder(…
‘NumIterations’, N,…
3
Path to implementation
C/C++ and HDL Code Generation

© 2012 The MathWorks, Inc.


33
Path to implementation
DESIGN

Mathematical modeling and algorithm


development
Algorithm Development

Model elaboration including fixed-point numerical representation


Fixed-Point

VERIFICATION
Automatic code generation for rapid on- target prototyping of Har

IMPLEMENTATION

C, C++ VHDL, Verilog

Co-simulation for verification in Hardware / Software


MCU DSP FPGA ASIC

INTEGRATION

3
Automatic Translation of MATLAB to C

With MATLAB Coder, design engineers can


Maintain one design in MATLAB
Design faster and get to C/C++ quickly
Test more systematically and frequently
Spend more time improving algorithms in MATLAB

3
HDL Workflow

 Floating Point Model System


– Satisfies System Requirements Requirements
 Executable Specification
– MATLAB and/or Simulink Model
Floating Point Model

Verification
Continuous
 Model Elaboration
– Develop Hardware Friendly Architecture
– Convert to Fixed-Point
 Determine Word Length Model Elaboration
 Determine Binary Point Location

 Implement Design
– Generate HDL code using HDL Coder Implement
– Import Custom and Vendor IP Code Generation

 Verification
– Software co-simulation with HDL simulator Verification
– Hardware co-simulation

3
Key Points

 MATLAB is an ideal language for LTE modeling


and simulation
 Communications System Toolbox
extends MATLAB capabilities with
algorithms for communications
system design
 You can accelerate simulation with a
variety of options in MATLAB
– Parallel computing, GPU processing, MATLAB to C
 Address implementation workflow gaps with
– Automatic MATLAB to C/C++ and HDL code
generation

3
– Hardware-in-the-loop verification

You might also like