lteSLFrameOffsetPSCCH
PSCCH DM-RS sidelink subframe timing estimate
Description
performs
synchronization using PSCCH demodulation reference signal (DM-RS)
symbols for the time-domain waveform, offset
= lteSLFrameOffsetPSCCH(ue
,waveform
)waveform
,
given UE-specific settings, ue
.
The returned offset
indicates the number
of samples from the start of the input waveform to the position in
that waveform where the first subframe containing DM-RS begins.
Examples
Synchronize and Demodulate Transmission Containing PSCCH DM-RS
Synchronize and demodulate a transmission that has been delayed by five samples. The transmission contains PSCCH demodulation reference signal (DM-RS) symbols that are used when estimating the waveform timing offset.
Create a UE configuration specifying 15 resource blocks, a normal cyclic prefix, and a PRBSet
of 1.
ue = struct('NSLRB',15,'CyclicPrefixSL','Normal','PRBSet',1);
Create a resource grid and modulate the waveform containing PSCCH DM-RS symbols.
txgrid = lteSLResourceGrid(ue); txgrid(ltePSCCHDRSIndices(ue)) = ltePSCCHDRS; txwaveform = lteSLSCFDMAModulate(ue,txgrid);
Add a time delay of five samples.
rxwaveform = [zeros(5,1); txwaveform];
Calculate the timing offset in samples.
offset = lteSLFrameOffsetPSCCH(ue,rxwaveform)
offset = 5
Correct the timing offset and demodulate the received waveform.
rxGrid = lteSLSCFDMADemodulate(ue,rxwaveform(1+offset:end));
View Correlation Peak in PSCCH DM-RS Transmission
View the correlation peak for a transmission waveform that has been delayed by five samples. The transmission contains PSCCH demodulation reference signal (DM-RS) symbols available for estimating the waveform timing.
Create a UE configuration specifying 15 resource blocks, a normal cyclic prefix, and a PRBSet
of 1.
ue = struct('NSLRB',15,'CyclicPrefixSL','Normal','PRBSet',1);
Create a resource grid and modulate the waveform containing PSCCH DM-RS symbols.
txgrid = lteSLResourceGrid(ue); txgrid(ltePSCCHDRSIndices(ue)) = ltePSCCHDRS; txwaveform = lteSLSCFDMAModulate(ue,txgrid);
Calculate the timing offset in samples.
[offset corr] = lteSLFrameOffsetPSCCH(ue,txwaveform);
Add a time delay of five samples.
rxwaveform = [zeros(5,1); txwaveform];
Calculate the timing offset in samples.
[offset corrDelayed] = lteSLFrameOffsetPSCCH(ue,rxwaveform);
Plot the correlation data before and after delay is added. Zoom in on the x-axis to view correlation peaks.
plot(corr) hold on plot(corrDelayed) hold off xlim([0 100])
Correct the timing offset and demodulate the received waveform.
rxGrid = lteSLSCFDMADemodulate(ue,rxwaveform(1+offset:end));
Input Arguments
ue
— UE-specific settings
scalar structure
User equipment settings, specified as a parameter structure containing these fields:
SidelinkMode
— Sidelink mode
'D2D'
(default) | 'V2X'
| optional
Sidelink mode, specified as 'D2D'
or
'V2X'
.
Data Types: char
| string
NSLRB
— Number of sidelink resource blocks
integer scalar from 6 to 110
Number of sidelink resource blocks, specified as an integer scalar from 6 to 110.
Example: 6
, which corresponds to a channel
bandwidth of 1.4 MHz.
Data Types: double
CyclicPrefixSL
— Cyclic prefix length
'Normal'
(default) | 'Extended'
| optional
Cyclic prefix length, specified as 'Normal'
or 'Extended'
.
Data Types: char
| string
PRBSet
— Zero-based physical resource block index
integer | integer column vector | two-column integer matrix
Zero-based physical resource block (PRB) index, specified as an integer, an integer column vector, or a two-column integer matrix.
For D2D sidelink, the PSCCH is intended to be transmitted in a single PRB in a subframe and
therefore, specifying PRBSet
as a scalar PRB index is recommended.
For V2X sidelink, the PSCCH is intended to be transmitted in a pair of consecutive PRB
in a subframe, therefore PRBSet
must be a column vector containing
two consecutive indices. However, for a more general nonstandard multi-PRB allocation,
PRBSet
can be a set of indices specified as an integer column
vector or as a two-column integer matrix corresponding to slot-wise resource allocations
for PSCCH.
Data Types: double
CyclicShift
— Cyclic shift for DM-RS
0
(default) | 3
| 6
| 9
Cyclic shift for DM-RS, specified as 0
,
3
, 6
or
9
. The function uses this input only for
V2X sidelink.
Data Types: double
Data Types: struct
waveform
— Modulated sidelink waveform
numeric matrix
Modulated sidelink waveform, specified as an
NS-by-NR
numeric matrix, where NS is the number of
time-domain samples and NR is the number of
receive antennas. waveform
should be at least one subframe long and
contain the DM-RS signals.
You can generate this matrix by performing SC-FDMA modulation
on a resource matrix. To perform this modulation, use the lteSLSCFDMAModulate
function or one of the
channel model functions, such as lteFadingChannel
or lteMovingChannel
.
Data Types: double
Complex Number Support: Yes
Output Arguments
offset
— Offset number of samples
scalar integer
Offset number of samples, returned as a scalar integer. This
output is the number of samples from the start of the waveform to
the position in that waveform where the first subframe containing
the DM-RS begins. offset
is computed by extracting
the timing of the peak of the correlation between waveform
and
internally generated reference waveforms containing DM-RS signals.
The correlation is performed separately for each antenna. The antenna
with the strongest correlation is used to compute offset
.
Note
offset
is the position of mod(max(abs(corr),LSF))
,
where LSF is the subframe
length.
corr
— Signal used to extract the timing offset
numeric matrix
Signal used to extract the timing offset, returned as a complex
numeric matrix. corr
has the same dimensions
as waveform
.
Version History
Introduced in R2017a
See Also
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 (한국어)