Main Content

lteRMCUL

Uplink reference measurement channel or FRC configuration

Description

rmccfgout = lteRMCUL(rc,duplexmode,totsubframes) returns a configuration structure for the reference channel defined by rc using a channel-specific default configuration. duplexmode and totsubframes are optional input parameters which define the duplexing mode and total number of subframes to be generated.

Use rmccfgout to generate a waveform with the fixed reference channel (FRC) generator tool, lteRMCULTool. The field names and default values of FRCs are in accordance with TS 36.104 [2], Annex A.

example

rmccfgout = lteRMCUL(rmccfg) returns a fully configured structure for the reference channel partially, or wholly, defined by the input structure, rmccfg. Any parameters missing at the input are initialized based on the rc field, if present in rmccfg, or the reference channel 'A1-1' otherwise.

rmccfg can include the field SRS to enable SRS-related configuration parameters.

example

Examples

collapse all

Using the reference measurement channel designation, create an uplink RMC configuration for RC 'A7-4'.

rmc = lteRMCUL('A7-4')
rmc = struct with fields:
                RC: 'A7-4'
             NULRB: 25
           NCellID: 0
            NFrame: 0
         NSubframe: 0
    CyclicPrefixUL: 'Normal'
       CyclicShift: 0
         Shortened: 0
           Hopping: 'Off'
          SeqGroup: 0
      TotSubframes: 10
              RNTI: 1
           NTxAnts: 1
         Windowing: 0
        DuplexMode: 'FDD'
             PUSCH: [1x1 struct]

Create a configuration structure for RC A1-1 as specified in TS 36.104.

rmc.RC = 'A1-1';
rmc.NCellID = 100;
rmcOut = lteRMCUL(rmc)
rmcOut = struct with fields:
                RC: 'A1-1'
             NULRB: 6
           NCellID: 100
            NFrame: 0
         NSubframe: 0
    CyclicPrefixUL: 'Normal'
       CyclicShift: 0
         Shortened: 0
           Hopping: 'Off'
          SeqGroup: 0
      TotSubframes: 10
              RNTI: 1
           NTxAnts: 1
         Windowing: 0
        DuplexMode: 'FDD'
             PUSCH: [1x1 struct]

rmcOut.PUSCH
ans = struct with fields:
         Modulation: 'QPSK'
            NLayers: 1
     DynCyclicShift: 0
           NBundled: 0
            BetaACK: 2
            BetaCQI: 2
             BetaRI: 2
     NHARQProcesses: 8
              RVSeq: [0 2 3 1]
                 RV: 0
       NTurboDecIts: 5
          OrthCover: 'On'
                PMI: 0
             PRBSet: [6x1 double]
     TargetCodeRate: 0.3333
     ActualCodeRate: [0.3611 0.3611 0.3611 0.3611 0.3611 0.3611 0.3611 0.3611 0.3611 0.3611]
         TrBlkSizes: [600 600 600 600 600 600 600 600 600 600]
    CodedTrBlkSizes: [1728 1728 1728 1728 1728 1728 1728 1728 1728 1728]

Create a new customized parameter set by overriding selected values of an existing preset RMC. Define a full-band 5MHz PUSCH using 64QAM modulation and 1/3 rate.

Looking at TS 36.104 Annex A reference measurement channels, A1-3 matches this criteria but with QPSK modulation.

Create a configuration structure for RC A1-3 as specified in TS 36.104.

rmc.RC = 'A1-3';
rmcout = lteRMCUL(rmc,1);
rmcout.PUSCH
ans = struct with fields:
         Modulation: 'QPSK'
            NLayers: 1
     DynCyclicShift: 0
           NBundled: 0
            BetaACK: 2
            BetaCQI: 2
             BetaRI: 2
     NHARQProcesses: 8
              RVSeq: [0 2 3 1]
                 RV: 0
       NTurboDecIts: 5
          OrthCover: 'On'
                PMI: 0
             PRBSet: [25x1 double]
     TargetCodeRate: 0.3333
     ActualCodeRate: [0.3111 0.3111 0.3111 0.3111 0.3111 0.3111 0.3111 0.3111 0.3111 0.3111]
         TrBlkSizes: [2216 2216 2216 2216 2216 2216 2216 2216 2216 2216]
    CodedTrBlkSizes: [7200 7200 7200 7200 7200 7200 7200 7200 7200 7200]

Override the PUSCH modulation, setting it to 64QAM. Create a new configuration structure. Inspect rmcout to see the modulation is 64QAM and the PUSCH transport block sizes and physical channel capacities have been updated to maintain the same 1/3 code rate.

rmc.PUSCH.Modulation = '64QAM';
rmcOverrideOut = lteRMCUL(rmc,1);
rmcOverrideOut
rmcOverrideOut = struct with fields:
                RC: 'A1-3'
             NULRB: 25
           NCellID: 0
            NFrame: 0
         NSubframe: 0
    CyclicPrefixUL: 'Normal'
       CyclicShift: 0
         Shortened: 0
           Hopping: 'Off'
          SeqGroup: 0
      TotSubframes: 10
              RNTI: 1
           NTxAnts: 1
         Windowing: 0
        DuplexMode: 'FDD'
             PUSCH: [1x1 struct]

rmcOverrideOut.PUSCH
ans = struct with fields:
         Modulation: '64QAM'
            NLayers: 1
     DynCyclicShift: 0
           NBundled: 0
            BetaACK: 2
            BetaCQI: 2
             BetaRI: 2
     NHARQProcesses: 8
              RVSeq: [0 2 3 1]
                 RV: 0
       NTurboDecIts: 5
          OrthCover: 'On'
                PMI: 0
             PRBSet: [25x1 double]
     TargetCodeRate: 0.3333
     ActualCodeRate: [0.3378 0.3378 0.3378 0.3378 0.3378 0.3378 0.3378 0.3378 0.3378 0.3378]
         TrBlkSizes: [7224 7224 7224 7224 7224 7224 7224 7224 7224 7224]
    CodedTrBlkSizes: [21600 21600 21600 21600 21600 21600 21600 21600 21600 21600]

Input Arguments

collapse all

Reference channel number, specified as a character vector or string scalar. Use double quotes or string. This argument represents the reference measurement channel (RMC) number, or fixed reference channel (FRC), as described in TS 36.104[2]. See UL Reference Channel Options for a list of the default top-level configuration associated with the available uplink reference channels.

Data Types: char | string

Duplexing mode, specified as 'FDD' or 'TDD'. It represents the frame structure type.

Data Types: char | string

Total number of subframes, specified as a numeric scalar. This argument specifies the total number of subframes that form the resource grid.

Data Types: double

Reference channel configuration, specified as a structure. The structure defines any, or all, of the fields or subfields contained in the output structure, rmccfgout. Any undefined fields are given appropriate default values.

Parameter FieldRequired or OptionalValuesDescription
RCOptional

'A1-1' (default), 'A1-2', 'A1-3', 'A1-4', 'A1-5', 'A2-1', 'A2-2', 'A2-3', 'A3-1', 'A3-2', 'A3-3', 'A3-4', 'A3-5', 'A3-6', 'A3-7', 'A4-1', 'A4-2', 'A4-3', 'A4-4', 'A4-5', 'A4-6', 'A4-7', 'A4-8', 'A5-1', 'A5-2', 'A5-3', 'A5-4', 'A5-5', 'A5-6', 'A5-7', 'A7-1', 'A7-2', 'A7-3', 'A7-4', 'A7-5', 'A7-6', 'A8-1', 'A8-2', 'A8-3', 'A8-4', 'A8-5', 'A8-6', 'A11-1', 'A3-2-9RB', 'A4-3-9RB'

Reference measurement channel (RMC) number or type, as specified in TS 36.104 Annex A.

[2].

SRSOptional'off' (default), 'on'

Enable SRS related configuration parameters (set SRS to 'on') for RMCs which optionally support SRS, or a complete or part SRS structure. If absent, no SRS configuration is created.

Data Types: struct

Output Arguments

collapse all

Configuration Parameters Structure

Configuration parameters, returned as a structure. rmccfgout contains the following fields.

Parameter FieldValuesDescription
RC

'A1-1' (default), 'A1-2', 'A1-3', 'A1-4', 'A1-5', 'A2-1', 'A2-2', 'A2-3', 'A3-1', 'A3-2', 'A3-3', 'A3-4', 'A3-5', 'A3-6', 'A3-7', 'A4-1', 'A4-2', 'A4-3', 'A4-4', 'A4-5', 'A4-6', 'A4-7', 'A4-8', 'A5-1', 'A5-2', 'A5-3', 'A5-4', 'A5-5', 'A5-6', 'A5-7', 'A7-1', 'A7-2', 'A7-3', 'A7-4', 'A7-5', 'A7-6', 'A8-1', 'A8-2', 'A8-3', 'A8-4', 'A8-5', 'A8-6', 'A11-1', 'A3-2-9RB', 'A4-3-9RB'

Reference channel number

NULRB

Scalar integer from 6 to 110

Number of uplink resource blocks. (NRBUL)

NCellID

Integer from 0 to 503

Physical layer cell identity

NFrame

0 (default), nonnegative scalar integer

Frame number

NSubFrame

0 (default), nonnegative scalar integer

Initial subframe number

CyclicPrefixUL

'Normal' (default), 'Extended'

Cyclic prefix length

CyclicShift

0, 1, 2, 3, 4, 5, 6, 7

Cyclic shift. This argument yields nDMRS(1).

Shortened

0 (default), 1

Subframe shortened flag. If the function sets the flag to 1, the last symbol of the subframe is not used. Subframes with possible SRS transmission require this flag to be set.

Hopping

'Off' (default), 'Group', or 'Sequence'

Hopping type

SeqGroup

0 (default), integer from 0 to 29

PUSCH sequence group assignment (ΔSS).

TotSubFrames

10 (default)

Positive scalar integer

Total number of subframes to generate

This argument specifies the total number of subframes that form the resource grid.

RNTI

1 (default)

Scalar integer

Radio network temporary identifier (RNTI) value (16 bits)

NTxAnts

1, 2, 4

Number of transmission antennas.

Windowing

Nonnegative scalar integer

The number of time-domain samples over which windowing and overlapping of SC-FDMA symbols is applied

DuplexMode

'FDD' (default), 'TDD'

Duplexing mode, specified as either:

  • 'FDD' for Frequency Division Duplex

  • 'TDD' for Time Division Duplex

It represents the frame structure type.

PUSCH

Structure

PUSCH transmission configuration

SRS

Structure

Sounding Reference Signal (SRS) configuration

PUSCH Substructure

The substructure PUSCH relates to the physical channel configuration and contains these fields:

Parameter FieldValuesDescription
Modulation'QPSK', '16QAM', '64QAM', or '256QAM'

Modulation format

NLayers

1, 2, 3, 4

Number of transmission layers.

DynCyclicShift

0, 1, 2, 3, 4, 5, 6, 7

Cyclic shift for DM-RS (yields nDMRS(2)).

NBundled

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

HARQ-ACK bundling scrambling sequence index

BetaACK

Scalar integer

Modulation and coding scheme (MCS) offset for HARQ-ACK bits, returned as a scalar integer.

BetaCQI

Scalar integer

Modulation and coding scheme (MCS) offset for CQI and PMI bits

BetaRI

Scalar integer

Modulation and coding scheme (MCS) offset for RI bits

NHARQProcesses

1, 2, 3, 4, 5, 6, 7, 8

Number of HARQ processes per component carrier

RVSeq

Numeric matrix

Redundancy version (RV) indicator used by all HARQ processes, returned as a numeric matrix. RVSeq is a one- or two-row matrix for one or two codewords, respectively. The number of columns in RVSeq equals the number of transmissions of the transport blocks associated with a HARQ process. The RV sequence specified in each column is applied to the transmission of the transport blocks. If RVSeq is a scalar (or column vector in the case of two codewords), then there is a single initial transmission of each block with no retransmissions. If RVSeq is a row vector in a two-codeword transmission, then the same RV sequence is applied to both codewords.

See footnote.

RV

Numeric matrix

Redundancy version (RV) indicator in initial subframe, returned as a numeric matrix. This argument is a one- or two-column vector that specifies the redundancy version for one or two codewords used in the initial subframe number, NSubframe. This parameter field is only for informational purposes and is read-only.

NTurboDecIts

Positive scalar integer

Number of turbo decoder iteration cycles

OrthCover

'Off' (default), 'On'

Orthogonal cover sequence flag.

Applies ('On'), or does not apply ('Off'), orthogonal cover sequence w (Activate-DMRS-with OCC).

PMI

Integer from 0 to 23

Scalar precoder matrix indication (PMI) to be used during precoding

PRBSet

Integer matrix

Physical resource block set of indices, returned as an integer matrix. This argument is a 1- or 2-column matrix that contains the 0-based physical resource block indices (PRBs) corresponding to the resource allocations for this PUSCH.

TargetCodeRate

Scalar or vector

Target code rates for each subframe in a frame. Used for calculating the transport block sizes according to TS 36.101[1], Annex A.2.1.2.

If TargetCodeRate is not provided and TrBlkSizes is provided at the input, TargetCodeRate == ActualCodeRate.

ActualCodeRate

Numeric vector

Actual code rates for each subframe in a frame. The maximum actual code rate is 0.93. This parameter field is only for informational purposes and is read-only.

TrBlkSizes

Numeric vector

Transport block sizes for each subframe in a frame

See footnote.

CodedTrBlkSizes

Numeric vector

Coded transport block sizes for each a subframe in a frame, returned as a numeric vector. This parameter field is only for informational purposes and is read-only.

See footnote.

  1. The values of RVSeq, TrBlkSizes, and CodedTrBlkSizes are set according to the modulation scheme and TargetCodeRate.

SRS Substructure

The substructure SRS contains these fields:

Parameter FieldValuesDescription
NTxAnts

1 (default), 2, 4

Number of transmission antennas.

BWConfig

0, 1, 2, 3, 4, 5, 6, 7

Cell-specific SRS Bandwidth Configuration value (CSRS)

BW

0, 1, 2, 3

UE-specific SRS Bandwidth value (BSRS)

ConfigIdx

Integer from 0 to 644

Configuration index (ISRS) for UE-specific periodicity (TSRS) and subframe offset (Toffset).

TxComb

0 or 1

Transmission comb. Controls SRS positions; SRS is transmitted in 6 carriers per resource block on odd (1) and even (0) resource indices.

HoppingBW

0, 1, 2, 3

SRS Frequency hopping configuration index (bhop)

FreqPosition

Integer from 0 to 23

Frequency domain position (nRRC)

CyclicShift

0 (default), integer from 0 to 7

UE-specific cyclic shift (nSRScs)

SeqGroup

0 (default), integer from 0 to 29

SRS sequence group number (u)

SeqIdx

0 or 1

Base sequence number (v)

SubframeConfig

Integer from 0 to 15

Sounding reference signal (SRS) subframe configuration

The following fields are present only when DuplexMode is set to 'TDD'.
NF4RachPreambles

0, 1, 2, 3, 4, 5, 6

Number of RACH preamble frequency resources of Format 4 in UpPTS

OffsetIdx

0 or 1

Choice of SRS Subframe Offset in the case of 2 ms SRS periodicity. This parameter indexes the two SRS Subframe Offset entries in the row specified by the ConfigIdx parameter in table 8.2-2 of TS 36.213 for the SRS Configuration Index.

More About

collapse all

UL Reference Channel Options

Initialization choices available for the uplink reference channel and associated top-level configuration defaults include:

Reference channelsReference channels (continued)Reference channels (continued)

A1-1 (6 RB, QPSK, R=1/3)

A1-2 (15 RB, QPSK, R=1/3)

A1-3 (25 RB, QPSK, R=1/3)

A1-4 (3 RB, QPSK, R=1/3)

A1-5 (9 RB, QPSK, R=1/3)

A2-1 (6 RB, 16QAM, R=2/3)

A2-2 (15 RB, 16QAM, R=2/3)

A2-3 (25 RB, 16QAM, R=2/3)

A3-1 (1 RB, QPSK, R=1/3)

A3-2 (6 RB, QPSK, R=1/3)

A3-3 (15 RB, QPSK, R=1/3)

A3-4 (25 RB, QPSK, R=1/3)

A3-5 (50 RB, QPSK, R=1/3)

A3-6 (75 RB, QPSK, R=1/3)

A3-7 (100 RB, QPSK, R=1/3)

A4-1 (1 RB, 16QAM, R=3/4)

A4-2 (1 RB, 16QAM, R=3/4)

A4-3 (6 RB, 16QAM, R=3/4)

A4-4 (15 RB, 16QAM, R=3/4)

A4-5 (25 RB, 16QAM, R=3/4)

A4-6 (50 RB, 16QAM, R=3/4)

A4-7 (75 RB, 16QAM, R=3/4)

A4-8 (100 RB, 16QAM, R=3/4)

A5-1 (1 RB, 64QAM, R=5/6)

A5-2 (6 RB, 64QAM, R=5/6)

A5-3 (15RB, 64QAM, R=5/6)

A5-4 (25 RB, 64QAM, R=5/6)

A5-5 (50 RB, 64QAM, R=5/6)

A5-6 (75 RB, 64QAM, R=5/6)

A5-7 (100 RB, 64QAM, R=5/6)

A7-1 (3 RB, 16QAM, R=3/4)

A7-2 (6 RB, 16QAM, R=3/4)

A7-3 (12 RB, 16QAM, R=3/4)

A7-4 (25 RB, 16QAM, R=3/4)

A7-5 (25 RB, 16QAM, R=3/4)

A7-6 (25 RB, 16QAM, R=3/4)

A8-1 (3 RB, QPSK, R=1/3)

A8-2 (6 RB, QPSK, R=1/3)

A8-3 (12 RB, QPSK, R=1/3)

A8-4 (25 RB, QPSK, R=1/3)

A8-5 (25 RB, QPSK, R=1/3)

A8-6 (25 RB, QPSK, R=1/3)

A11-1 (3 RB, QPSK, R=11/27)

A17-1 (6 RB, 256QAM, R=5/6)

A17-2 (15 RB, 256QAM, R=5/6)

A17-3 (25 RB, 256QAM, R=5/6)

A17-4 (50 RB, 256QAM, R=5/6)

A17-5(75 RB, 256QAM, R=5/6)

A17-6 (100 RB, 256QAM, R=5/6)

A3-2-9RB (9 RB, QPSK, R=1/3)

A4-3-9RB (9 RB, 16QAM, R=3/4)

The fields in the output configuration structure, rmccfgout, are initialized in accordance with the reference channels defined in TS 36.104, Annex A.

  • 'A3-2-9RB', and 'A4-3-9RB' are custom RMC configured for non-standard bandwidths but with the same code rate as the standardized versions.

  • 'A11-1' enables TTI bundling and the corresponding HARQ pattern (enhanced HARQ pattern for FDD).

References

[1] 3GPP TS 36.101. “Evolved Universal Terrestrial Radio Access (E-UTRA); User Equipment (UE) Radio Transmission and Reception.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.

[2] 3GPP TS 36.104. “Evolved Universal Terrestrial Radio Access (E-UTRA); Base Station (BS) Radio Transmission and Reception.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.

[3] 3GPP TS 36.213. “Evolved Universal Terrestrial Radio Access (E-UTRA); Physical layer procedures.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.

Version History

Introduced in R2014a