Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

lteULPrecode

SC-FDMA precoding

Syntax

Description

example

out = lteULPrecode(in,nrb) performs SC-FDMA precoding of the complex modulation symbols in for PUSCH configuration with a bandwidth of nrb resource blocks. in is a MSymb-by-NLayers matrix of values and out has the same dimensions.

Examples

collapse all

UL precoding is a step in the PUSCH processing chain. The chain includes scrambling, symbol mapping, UL precoding, RE mapping, and SC-FDMA modulation.

Create a UE-specific configuration structure, get PUSCH indices, and generate a bit stream sized according to configuration structure.

ue = lteRMCUL('A3-2');
[puschInd, info] = ltePUSCHIndices(ue,ue.PUSCH);
ueDim = lteULResourceGridSize(ue);
bits = randi([0,1],info.G,ue.PUSCH.NLayers);

Perform scrambling, symbol modulation, and UL precoding.

scrBits = lteULScramble(ue,bits);
symbols = lteSymbolModulate(scrBits,ue.PUSCH.Modulation);
precodedSymbols = lteULPrecode(symbols,ue.NULRB);

Generate resource mapping grid, populate the grid with the precoded symbols, and perform SC-FDMA modulation.

grid = lteULResourceGrid(ue);
grid(puschInd) = precodedSymbols;
[timeDomainSig,infoScfdma] = lteSCFDMAModulate(ue,grid);

Input Arguments

collapse all

Complex modulation symbols, specified as a numeric matrix of size MSymb-by-NLayers.

Data Types: double | single | uint8 | uint16 | uint32 | uint64 | int8 | int16 | int32 | int64
Complex Number Support: Yes

Number of resource blocks, specified as a scalar integer.

Data Types: double

Output Arguments

collapse all

Precoded PUSCH output symbols, returned as a numeric matrix of size MSymb-by-NLayers.

Data Types: double | single | uint8 | uint16 | uint32 | uint64 | int8 | int16 | int32 | int64
Complex Number Support: Yes

Introduced in R2014a

Was this topic helpful?