Documentation

ltePRACHInfo

PRACH resource information

Syntax

  • info = ltePRACHInfo(ue,chs)
    example

Description

example

info = ltePRACHInfo(ue,chs) returns a structure, info, containing PRACH resource information given UE-specific settings structure, ue, and channel transmission configuration structure, chs. For more information, see PRACH Information.

Examples

collapse all

Find Root Zadoff-Chu Sequences from PRACH Information

Find the set of root Zadoff-Chu sequences required for all preamble indices (0,...,63) in a cell.

ue.NULRB = 6;
config.Format = 0;
config.CyclicShiftIdx = 8;
config.PreambleIdx = (0:63);
prachInfo = ltePRACHInfo(ue,config);
unique(prachInfo.RootSeq)
Warning: Using default value for parameter field DuplexMode (FDD) 
Warning: Using default value for parameter field HighSpeed (0) 
Warning: Using default value for parameter field FreqOffset (0) 
Warning: Using default value for parameter field SeqIdx (0) 

ans =

   129   140   699   710

Input Arguments

collapse all

ue — UE-specific settingsstructure array

UE-specific settings, specified as a structure array. ue can contain the following fields.

Parameter FieldRequired or OptionalValuesDescription
NULRBRequired

Positive scalar integer

Number of uplink (UL) resource blocks (RBs).

DuplexModeOptional

'FDD' (default), 'TDD'

Duplexing mode, specified as:

  • 'FDD' for Frequency Division Duplex or

  • 'TDD' for Time Division Duplex

The following parameters are dependent upon the condition that DuplexMode is set to 'TDD'.

  TDDConfigOptional

0 (default), 1, 2, 3, 4, 5, 6

Uplink or downlink configuration

  SSCOptional

0 (default), 1, 2, 3, 4, 5, 6, 7, 8, 9

Special subframe configuration (SSC)

The following parameter fields are dependent upon the condition that DuplexMode is set to 'TDD' or when chs.ConfigIdx is present.

  NSubframeOptional

0 (default), Nonnegative scalar integer

Subframe number.

  NFrameOptional

0 (default), Nonnegative scalar integer

Frame number

The following parameter fields are dependent upon the condition that the Preamble Format, chs.Format, is set to '4'.

  CyclicPrefixOptional

'Normal' (default), 'Extended'

Cyclic prefix length

Data Types: struct

chs — Channel transmission configurationscalar structure

Channel transmission configuration, specified as a scalar structure. chs contains the following fields.

Parameter FieldRequired or OptionalValuesDescription
FormatOptional

0, 1, 2, 3, 4 (default is determined by ConfigIdx field if present). However, the Format field must be specified if the ConfigIdx field is not specified.

Preamble format

See Note.
SeqIdxOptional

0 (default),...,837 Nonnegative scalar integer.

Logical root sequence index (RACH_ROOT_SEQUENCE)

ConfigIdxOptional

0 (default),...,63, Nonnegative scalar integer. Default is determined by Format field, if present. However, the ConfigIdx field must be specified if the Format field is not specified.

PRACH Configuration Index (prach-ConfigurationIndex)

See Note.
PreambleIdxOptional

0 (default),...,63, Nonnegative scalar integer or vector.

Preamble index within cell (ra-PreambleIndex)

CyclicShiftIdxOptional

0 (default),...,15, Nonnegative scalar integer.

Cyclic shift configuration index (zeroCorrelationZoneConfig, yields N_CS)

HighSpeedOptional

0 (default) or 1

High Speed flag (highSpeedFlag). A value of 1 signifies a restricted set. A value of 0 signifies an unrestricted set.

The following parameters are dependent upon the condition that ue.DuplexMode is set to 'TDD'.

  FreqIdxOptional

0 (default), 0, 1, 2, 3, 4, 5 Nonnegative scalar integer.

Frequency resource index (f_RA). Only required for 'TDD' duplexing mode.

The following parameter fields are dependent upon the condition that the Preamble Format, chs.Format, is set to 0, 1, 2, or 3.

  FreqOffsetOptional

0 (default),...,94 Nonnegative scalar integer.

PRACH frequency offset (n_PRBoffset). Only required for Preamble format 0–3.

    Note:   Although the parameters chs.Format and chs.ConfigIdx are both described as ‘Optional', at least one of these parameters must be specified. If both parameters are present, then chs.Format is used and chs.ConfigIdx is ignored.

Data Types: struct

Output Arguments

collapse all

info — PRACH resource informationscalar structure

PRACH resource information, returned as a scalar structure. info contains the following fields.

NZC — Zadoff-Chu sequence lengthpositive integer

Zadoff-Chu sequence length, returned as a positive integer. (N_ZC)

Data Types: double

SubcarrierSpacing — Subcarrier spacing of PRACH preamblepositive integer

Subcarrier spacing of PRACH preamble, in Hz, returned as a positive integer. (deltaf_RA)

Data Types: double

Phi — Frequency-domain location offsetpositive integer

Frequency-domain location offset, returned as a positive integer. (phi)

Data Types: double

K — Ratio of uplink data to PRACH subcarrier spacingnumeric scalar

Ratio of uplink data to PRACH subcarrier spacing, returned as a numeric scalar. (K)

Data Types: double

TotSubframes — Number of subframes duration of PRACHnumeric scalar

Number of subframes duration of the PRACH, returned as a numeric scalar. Each subframe lasts 30720 fundamental periods, therefore TotSubframes is ceil(sum(Fields)/30720), the number of subframes required to hold the entire PRACH waveform. The duration of the PRACH is a function of the Preamble Format as described in TS 36.211, Table 5.7.1-1 [2].

Data Types: double

Fields — PRACH field lengths1-by-4 numeric vector

PRACH field lengths, returned as a 1-by-4 numeric vector. The elements are [OFFSET T_CP T_SEQ GUARD]. T_CP and T_SEQ are the lengths in fundamental time periods (T_s), of cyclic prefix and PRACH sequence, respectively. OFFSET is the number of fundamental time periods from the start of configured subframe to the start of the cyclic prefix, and is non-zero only for TDD special subframes. GUARD is the number of fundamental time periods from the end of the PRACH sequence to the end of the number of subframes spanned by the PRACH.

Data Types: double

PRBSet — PRBs occupied by PRACH preamblenonnegative integer column vector

PRBs occupied by PRACH preamble, returned as a nonnegative integer column vector. (starts at n_PRB, zero-based).

  • If no PRACH is present, the info.PRBSet field is empty.

  • If PRACH is present, the info.PRBSet field contains six consecutive Physical Resource Block (PRB) indices, indicating the frequency-domain location of the PRACH.

    Note:   The PRACH uses a different SC-FDMA symbol construction from the other channels, PUCCH, PUSCH, and SRS. Specifically, the PRACH does not occupy the set of 12 subcarriers in each RB in the same fashion as other channels. Therefore, the PRBSet indicates the frequency range, 180 kHz per RB, occupied by the PRACH. The PRACH occupies a bandwidth approximately equal to 1.08 MHz, or 6RBs.

Data Types: uint32

NCS — Length of zero correlation zone plus 1positive integer

Length of zero correlation zone plus 1, specified as a positive integer (N_CS). NCS corresponds to the complete extent of autocorrelation lags (0 and N_CS–1 non-zero) that exhibit perfect correlation properties (1 at 0 lag, 0 at non-zero lags). NCS is expressed directly, as in the standard, related to the fundamental Zadoff-Chu sequence construction. The actual sample span of the zero correlation zone in the waveform generated by ltePRACH is a function of the sampling rate.

Data Types: double

CyclicShift — Cyclic shift or shifts of Zadoff-Chu sequencenumeric row vector

Cyclic shift or shifts of Zadoff-Chu sequence, returned as a numeric row vector. (C_v).

For High Speed mode, any element of CyclicShift equal to –1 indicates that there are no cyclic shifts in the restricted set for the corresponding preamble index.

Data Types: double

RootSeq — Physical root Zadoff-Chu sequence index or indicesnumeric row vector

Physical root Zadoff-Chu sequence index or indices, required to generate the PRACH for each of the configured set of preamble indices returned as a numeric row vector. (u) RootSeq is either a vector or a scalar aligned with the configuration of chs.PreambleIdx

Data Types: double

CyclicOffset — Cyclic shift or shifts corresponding to Doppler Shiftvector

CyclicOffset values are cyclic shifts corresponding to a Doppler Shift of 1/T_SEQ (d_u).

For High Speed mode, the field CyclicOffset is present. It contains cyclic offset values for each of the configured set of preamble indices. CyclicOffset is either a vector or a scalar aligned with the configuration of chs.PreambleIdx.

Data Types: double

SamplingRate — Sampling rate of PRACH modulatornumeric scalar

Sampling rate of the PRACH modulator, returned as a numeric scalar.

Data Types: double

BaseOffset — Base timing offset numeric scalar

Base timing offset, in microseconds. This field is used for the detection test in TS 36.104 [1]. (duration of N_CS/2)

Data Types: double

Data Types: struct

More About

collapse all

PRACH Information

The parameters "PRACH Mask Index" and "PRACH Resource Index," described in TS 36.321 [3], are not explicit in the configuration, but are implicit in the choice of ue.NSubframe and ue.NFrame.

The PRACH is always be generated provided it fits with the overall duplexing arrangement. For FDD, the PRACH is generated in any subframe. For TDD, the PRACH is generated only in special subframes for Preamble Format 4, and in uplink subframes for Preamble Format 0-3, provided there are info.TotSubframes consecutive uplink subframes for the chosen TDD configuration starting from the current subframe.

If chs.ConfigIdx is present, further validation is used to comply with TS 36.211 [2], Table 5.7.1-2 for FDD and Table 5.7.1-4 for TDD. Specifically, chs.Format, if present, is validated against chs.ConfigIdx and a preamble is only generated in appropriate frames and subframes. For contradictory values of chs.Format and chs.ConfigIdx, a warning is issued. If chs.Format is absent, the format is inferred, if possible, from chs.ConfigIdx. If the entry in TS 36.211 [2], Table 5.7.1-2 for FDD or Table 5.7.1-4 for TDD indicates "N/A" for the preamble format, an error is issued.

For TDD, if a combination of chs.ConfigIdx, ue.TDDConfig, t_RA0, t_RA1, t_RA2 given by ue.NSubframe and ue.NFrame and chs.FreqIdx appears in TS 36.211 [2], Table 5.7.1-4, the PRACH is generated. chs.FreqIdx corresponds to the first entry in the quadruples in TS 36.211 [2], Table 5.7.1-4. The other three entries (t_RA0,t_RA1, t_RA2) in the quadruple are specified by ue.NSubframe and ue.NFrame.

    Note:   In accordance with this logic,

    • if chs.ConfigIdx is absent, ue.NSubframe and ue.NFrame are not required at all for FDD.

    • In the case that a preamble is not generated under these rules, info.PRBSet is empty and the waveform generated by ltePRACH consists of all zeros.

References

[1] 3GPP TS 36.104. "Base Station (BS) radio transmission and reception." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: http://www.3gpp.org.

[2] 3GPP TS 36.211. "Physical Channels and Modulation." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: http://www.3gpp.org.

[3] 3GPP TS 36.321. "Medium Access Control (MAC) protocol specification." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: http://www.3gpp.org.

Introduced in R2014a

Was this topic helpful?