This is machine translation

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

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


SC-FDMA precoding


out = lteULPrecode(in,nrb)



out = lteULPrecode(in,nrb) performs SC-FDMA precoding of the complex modulation symbols in for PUSCH configuration with a bandwidth of nrb resource blocks.


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 an NSym-by-NL matrix of complex symbols. NSym is the number of symbols and NL is the number of layers.

Data Types: double
Complex Number Support: Yes

Number of resource blocks, specified as a nonnegative integer.

Data Types: double

Output Arguments

collapse all

Precoded PUSCH output symbols, returned as an NSym-by-NL matrix of complex symbols. NSym is the number of symbols, and NL is the number of layers.

The dimension and size of the input and output symbol matrices are the same.

Introduced in R2014a

Was this topic helpful?