Modeling A 4G-LTE System In MATLAB

Transcription

Modeling a 4G-LTE System in MATLABHouman Zarrinkoub PhD.Product ManagerSignal Processing & CommunicationsMathWorks 2012 The MathWorks, Inc.1

Agenda 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 Summary2

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

How is this remarkable advance possible? Integration of enabling technologies with sophisticated mathematicalalgorithms– OFDM (Multi-carrier transmission, large bandwidth requires attention to multipath fading)– MIMO (multiple antennas)– Turbo Coding (near Shannon limit, e.g., near capacity channel coding) Smart usage of resources and bandwidth (smart engineering techniques)––––Adaptive modulationAdaptive codingAdaptive MIMOAdaptive bandwidth4

What MATLAB users care about LTE standard? 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 groupsMATLAB is their common language5

Challenges:From specification to implementation Simplify translation fromspecification to a model asblue-print for implementationIntroduce innovative proprietaryalgorithmsDynamic system-levelperformance evaluationAccelerate simulation of largedata setsAddress gaps in theimplementation workflow6

Where does MATLAB fit in addressing these challenges? MATLAB and Communications System Toolboxare ideal for LTE algorithm and system designMATLAB and Simulink provide an environmentfor dynamic & large scale simulationsAccelerate simulation with a variety of optionsin MATLABConnect system design to implementation with– C and HDL code generation– Hardware-in-the-loop verification7

Case Study:Downlink physical layer of LTE (Release apperScramblingantenna portsModulationmapperResource elementmapperOFDM signalgenerationResource elementmapperOFDM signalgenerationPrecoding 2012 The MathWorks, Inc.8

Modeling and simulation 2012 The MathWorks, Inc.9

LTE Physical layer model in standard Downlink Shared Channel– Transport channel– Physical channelTurbo Channel CodingMIMOOFDMAAdaptation ofeverythingReference: 3GPP TS 36 211 v10 (2010-12)10

LTE Physical layer model in MATLABa0 , a1 ,., a A 1Transport blockCRC attachmentb0 , b1 ,., b B 1Code block segmentationCode block CRC attachmentTurbo Channel Codingcr 0 , cr1 ,., cr K r 1 Channel codingd r(i0) , d r(1i ) ,., d r(i )Dr 1 Rate matchingMIMOOFDMAer 0 , er1 ,., er Er 1 Code blockconcatenationf 0 , f1 ,., f G 1layerscodewordsScramblingAdaptation ntenna portsModulationmapperResource elementmapperOFDM signalgenerationResource elementmapperOFDM signalgenerationPrecoding Open LTE system model11

Overview of Turbo Coding Error correction & codingtechnology of LTE standard Performance: Approach thechannel capacity (Shannonbound) Represents an evolution ofconvolutional coding Based on an iterative decodingscheme12

MATLAB Demo comm.ConvolutionalEncoder( comm.ViterbiDecoder( ‘InputFormat’, ‘Hard’, 13

MATLAB Demo ikelihood ratio’ comm.ViterbiDecoder( ‘InputFormat’, ‘Soft’, 14

MATLAB Demo comm.TurboEncoder ikelihood ratio’ comm.TurboDecoder( ‘NumIterations’, 6, 15

OFDM Overview 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 equalizers16

OFDM & Multi-path Fading Multi-path propagation leads to frequency selective fadingFrequency-domain equalization is less complex and perfectly matches OFDMWe need to know channel response at each sub-carrier – We need pilotsH(ω)*ℎ2 , 𝑑2 }Frequency-selective fadingG(ω)H(ω)Multi-path1*ℎ0 , 𝑑0 }*ℎ1 , 𝑑1 }y(n) 𝑁𝑛 0 ℎ𝑛ωx( 𝑛 𝑑𝑛 )Y(ω) H(ω)X(ω)Frequency-domain equalizationIf G(ω𝑘 ) 𝐻 1 (ω𝑘 )ωG(ω𝑘 ) Y(ω𝑘 ) 𝑋(ω𝑘 )17

How Does LTE Implement OFDM?FrequencyNmax 2048 Interpolate vertically(Frequency)Resource elementPilotsResource blockInterpolate horizontally(Time)Resource grid 0.511.52Time (msec)18

How to Implement LTE OFDM in MATLABswitch prmLTEPDSCH.NrbDepending onChannel Bandwidth 6*numRb mod(v vsh, 6) 1;Transmitter:Place pilots in regular intervalsCase 25, N 512;Set Frequency-domainFFT sizeCase 100, N 2048; mean([hp(:,1,1,n) hp(:,3,1,n)])X ifft(tmp,N,1);Create OFDM signal mean([hp(k,2,1,:) hp(k,4,1,:)])Receiver:Estimate channel by interpolating intime & frequency19

MIMO Overview Multiple Input Multiple OutputUsing multiple transmit and receive antennasY H*X nh1,1h2,1ℎ11ℎH 21ℎ31ℎ41Xℎ12ℎ22ℎ32ℎ42ℎ13 hℎ1,214ℎ23 ℎ24ℎ33 ℎ34ℎ43 ℎ44Yh4,4Multiple InputChannelMultiple Output20

Where is MIMO being used? Several wireless standards–––– 802.11n: MIMO extensions of WiFi as of 2008802.16e: As of 2005 in WiMax Standard3G Cellular: 3GPP Release 6 specifies transmit diversity mode4G LTETwo main types of MIMO– Spatial multiplexing– Space-Time Block Coding (STBC)21

Spatial Multiplexing MIMO technique used in LTE standard Divide the data stream into independent sub-streams and use multipletransmit 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 equationsY HX n22

MIMO-OFDM overviewY 𝐻 𝑋 𝑛What if 2 rows are linearly dependent?ℎ1ℎ𝐻 �4ℎ4ℎ34ℎ44Dimension 4; Rank 3;H singular (not invertible)Y𝐻 𝑈𝐷𝑉 𝐻Singular Value Decompositionsubcarrier 𝑤𝑘Time 𝑡𝑛To avoid singularity:1. Precode input with pre-selected V2. Transmit over antennas based on Rank23

Adaptive MIMO: Closed-loop Pre-coding and Layer MappingBase stationLayerMappingPrecoding(*)Rank IndicatorPrecoder Matrix IndicatorOFDMChannel RankEstimationPrecoder MatrixEstimationmobile24

Adaptive MIMO in MATLAB In Receiver:Detect V Rank of the H Matrix Number of layersV prmLTEPDSCH.numLayers;Switch V In Transmitter: (next frame)Based on number of layersFill up transmit antennas with available rankcase 4out complex(zeros(inLen1/2, v));out(:,1:2) reshape(in1, 2, inLen1/2).';out(:,3:4) reshape(in2, 2, inLen2/2).';25

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)26

LTE Physical layer model in MATLABTurbo Channel CodingMIMOOFDMAAdaptation ofeverything27

Simulation Acceleration 2012 The MathWorks, Inc.28

Simulation acceleration options in MATLABSystemObjectsUser’s CodeParallelComputingMATLAB to CGPUprocessing29

GPU Processing withCommunications System Toolbox Alternative implementation for manySystem objects take advantage ofGPU processingGPU System objectsUse Parallel Computing Toolbox toexecute many communicationsalgorithms directly on the GPUcomm.gpu.ViterbiDecoder Easy-to-use syntax Dramatically accelerate mm.gpu.AWGNChannel30

Example: Turbo Coding Impressive coding gainHigh computational complexityBit-error rate performance as a function of number of iterations comm.TurboDecoder( comm.gpu.TurboDecoder( ‘NumIterations’, N, 31

Simulation acceleration with GPU System objects VersionElapsed timeAccelerationCPU8 hours1.01 GPU40 minutes12.0Cluster of 4GPUs11 minutes43.0Same numerical results comm.TurboDecoder( ‘NumIterations’, N, comm.gpu.TurboDecoder( ‘NumIterations’, N, 32

Path to implementationC/C and HDL Code Generation 2012 The MathWorks, Inc.33

Path to implementationDESIGNMathematical modeling and tVERIFICATIONIMPLEMENTATIONAutomatic code generation for rapid ontarget prototyping of Hardware/SoftwareVHDL, VerilogC, C MCUModel elaboration including fixed-pointnumerical representationDSPFPGAASICCo-simulation for verification inHardware / SoftwareINTEGRATION34

iterateAutomatic Translation of MATLAB to CAlgorithm Design andCode Generation inMATLABverify/accelerateWith MATLAB Coder, design engineers can Maintain one design in MATLABDesign faster and get to C/C quicklyTest more systematically and frequentlySpend more time improving algorithms in MATLAB35

HDL Workflow Floating Point Model– Satisfies System Requirements Executable Specification Model Elaboration– Develop Hardware Friendly Architecture– Convert to Fixed-Point Determine Word LengthDetermine Binary Point LocationImplement Design– Generate HDL code using HDL Coder– Import Custom and Vendor IP Verification– Software co-simulation with HDL simulator– Hardware co-simulationFloating PointModelModelElaborationImplementCode GenerationContinuous Verification– MATLAB and/or Simulink ModelSystemRequirementsVerification36

Key Points MATLAB is an ideal language for LTE modelingand simulationCommunications System Toolbox extendsMATLAB capabilities with algorithms forcommunications system designYou can accelerate simulation with a variety ofoptions in MATLAB– Parallel computing, GPU processing, MATLAB to C Address implementation workflow gaps with– Automatic MATLAB to C/C and HDL codegeneration– Hardware-in-the-loop verification37

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