lteSLSCFDMAModulate
Sidelink SC-FDMA modulation
Syntax
Description
returns
a modulated sidelink SC-FDMA waveform for the specified UE settings
structure and allocated resource element grid of a number of subframes
across one or more antenna planes. For more information, see Sidelink SC-FDMA Modulation.waveform
= lteSLSCFDMAModulate(ue
,grid
)
[___] = lteSLSCFDMAModulate(
specifies
in ue
,grid
,windowing
)windowing
the number of windowed and overlapped
samples to use in the time-domain windowing. For this syntax, the
value reported in info
.Windowing
equals windowing
.
Any value provided in ue
.Windowing
is
ignored.
This syntax supports output options from prior syntaxes.
Examples
Sidelink Broadcast Channel Modulation
Perform sidelink SC-FDMA modulation of one subframe containing a sidelink broadcast transmission. Any resource elements present in the last SC-FDMA symbol of the subframe are not modulated, so the resulting waveform magnitude is zero during that SC-FDMA symbol. Plot the magnitude of the resulting time-domain waveform and the transmitted resource grid magnitude.
Create a UE settings structure and an empty resource grid
ue.NSLRB = 6; ue.CyclicPrefixSL = 'Extended'; ue.InCoverage = 1; ue.DuplexMode = 'FDD'; ue.NFrame = 0; ue.NSubframe = 0; ue.NSLID = 42; grid = lteSLResourceGrid(ue);
Transmit the PSBCH
Populate the PSBCH resource grid with an encoded SL-MIB message, and its DM-RS. Perform sidelink SC-FDMA modulation.
grid(ltePSBCHIndices(ue)) = ltePSBCH(ue,lteSLBCH(ue,lteSLMIB(ue))); grid(ltePSBCHDRSIndices(ue)) = ltePSBCHDRS(ue); [waveform,info] = lteSLSCFDMAModulate(ue,grid);
Calculate the expected RMS for each SC-FDMA symbol from the resource grid prior to modulation.
rms = sqrt(sum(abs((grid./double(info.Nfft)).^2)));
Plot the waveform magnitude overlaying the RMS for each SC-FDMA symbol. Plot the transmitted resource grid magnitude.
t = (0:size(waveform,1))/info.SamplingRate; figure subplot(2,1,1) hold on plot(t(1:end-1),abs(waveform),'r'); n = cumsum([1 info.CyclicPrefixLengths + info.Nfft]); n = [n(1:end-1); n(2:end)]; rmsplot = repmat(rms,[2 1]); plot(t(n(:)),rmsplot(:),'b') xlabel('time (s)') ylabel('magnitude') title('Waveform vs. Time') legend('Waveform magnitude','RMS per resource grid SC-FDMA symbol') subplot(2,1,2) imagesc(abs(grid)) title('Resource Grid Magnitude') xlabel('SC-FDMA symbol index'); ylabel('subcarrier index');
Input Arguments
ue
— User equipment settings
structure
User equipment settings, specified as a parameter structure containing these fields:
CyclicPrefixSL
— Cyclic prefix length
'Normal'
(default) | 'Extended'
| optional
Cyclic prefix length, specified as 'Normal'
or 'Extended'
.
Data Types: char
| string
Windowing
— Number of time-domain samples
positive integer scalar | optional
Number of time-domain samples over which the function applies windowing and overlapping of sidelink SC-FDMA symbols, specified as a positive integer scalar.
ue
.Windowing
must be
even. For the
ue
.Windowing
field, the default depends on NRB and
CyclicPrefixSL
.
Data Types: double
Data Types: struct
grid
— Resource element grid
numeric 3-D array
Resource element grid, specified as an
NSC-by-NSYM-by-NT
numeric array. NSC must be a
multiple of 12 REs per Resource Block, since number of resource blocks is
NRB = NSC / 12.
NSYM must be a multiple
of the number of SC-FDMA symbols in a subframe (14 for normal cyclic prefix
and 12 for extended cyclic prefix).
NT is the number of
antenna ports. grid
defines the RE allocation across
one or more subframes. Multiple subframes are defined by concatenation
across the columns (second dimension).
Each antenna plane in grid
is SC-FDMA modulated,
resulting in the columns of waveform
, as described
in Represent Resource Grids.
Data Types: double
Complex Number Support: Yes
windowing
— Number of time-domain samples
positive integer scalar | optional
Output Arguments
waveform
— Sidelink SC-FDMA modulated waveform
numeric matrix
info
— Sidelink SC-FDMA modulated waveform information
structure
Sidelink SC-FDMA modulated waveform information, returned as a parameter structure containing these fields:
SamplingRate
— Sampling rate
positive numeric scalar
Sampling rate of the time-domain sidelink waveform, in Hz,
returned as a positive numeric scalar.
SamplingRate
=
Nfft
× (30.72e6 / 2048).
Nfft
— Number of FFT points
positive integer scalar
The number of FFT points, returned as a positive integer
scalar. Nfft
is a function of the number of
resource blocks (NRB)
NRB | Nfft |
---|---|
6 | 128 |
15 | 256 |
25 | 512 |
50 | 1024 |
75 | 2048 |
100 | 2048 |
In general, Nfft
is the
smallest power of 2 greater than or equal to
(12 × NRB) / 0.85.
Specifically, Nfft
is the smallest FFT that
spans all subcarriers and results in no more than 85% of
bandwidth occupancy
(12 × NRB / Nfft
).
Windowing
— Number of time-domain samples
positive integer scalar
Number of time-domain samples over which windowing and overlapping of sidelink SC-FDMA symbols is applied, returned as a positive integer scalar.
CyclicPrefixLengths
— Cyclic prefix length
positive integer vector
Cyclic prefix length in symbols for each sidelink SC-FDMA symbol in a subframe, returned as an NSYM-by-1 integer vector. NSYM is 14 for normal cyclic prefix and 12 for extended cyclic prefix.
The vector returned for
info
.CyclicPrefixLengths
depends on the FFT size.
When
info
.Nfft
=2048
, thenCyclicPrefixLengths
is:[160 144 144 144 144 144 144 160 144 144 144 144 144 144]
for normal cyclic prefix[512 512 512 512 512 512 512 512 512 512 512 512]
for extended cyclic prefix
For other values of
info
.Nfft
, these element values inCyclicPrefixLengths
are scaled byinfo
.Nfft
/ 2048.
More About
Sidelink SC-FDMA Modulation
The sidelink SC-FDMA modulation processing
in lteSLSCFDMAModulate
performs
IFFT calculation, half-subcarrier shifting, cyclic prefix insertions,
and optional raised-cosine windowing and overlapping of adjacent sidelink
SC-FDMA symbols. TS 36.211 specifies that for PSSCH (Section 9.3.6),
PSCCH (9.4.6), PSDCH (9.5.6) and PSBCH (9.6.6), resource elements
in the last SC-FDMA symbol within a subframe should be counted in
the mapping process but not transmitted. Therefore, before performing
the IFFT, the last SC-FDMA symbol of each subframe in the input resource
grid is set to zero.
For sidelink SC-FDMA modulation, calling lteSLSCFDMAModulate
on
a multi-subframe array of resource grids is recommended.
When the resource element grid input to
lteSLSCFDMAModulate
spans multiple subframes, the windowing and overlapping is applied between all adjacent SC-FDMA symbols, including the last symbol of the previous subframe and the first symbol of the next subframe. Multi-subframe modulation processing results in a waveform that does not have discontinuities between subframes.A time-domain waveform that concatenates individually modulated subframes has discontinuities at the start and end of each subframe. To avoid these discontinuities, the resulting multi-subframe time-domain waveform must be created by manually overlapping symbols at the subframe boundaries.
If the value for windowing is zero, issues concerning concatenation of subframes before sidelink SC-FDMA modulation do not apply.
If ue
.Windowing
is absent,
info
.Windowing
returns a default value chosen
as a function of NRB. The chosen value is a compromise between:
The effective duration of cyclic prefix, and therefore the channel delay spread tolerance
The spectral characteristics of the transmitted signal, not considering any additional FIR filtering
References
[1] 3GPP TS 36.211. “Evolved Universal Terrestrial Radio Access (E-UTRA); Physical Channels and Modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.
Version History
Introduced in R2016b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)