Documentation

nrCarrierConfig

Carrier configuration parameters

Description

ThenrCarrierConfigobject sets carrier configuration parameters for a specific OFDM numerology, as defined in TS 38.211 Sections 4.2, 4.3, and 4.4[1].

The object defines the carrier subcarrier spacing, bandwidth, and offset parameters from pointA, the center of subcarrier 0 in the common resource block 0 (CRB 0). For a 60 kHz subcarrier spacing, you can specify either normal or extended cyclic prefix. The read-only properties of this object provide the carrier resource grid time-domain dimensions. By default, the object specifies a 10 MHz carrier corresponding to 52 resource blocks (RBs) and 15 kHz subcarrier spacing. You can use the object in slot-oriented processing by specifying the current slot and frame numbers.

Creation

Description

example

carrier = nrCarrierConfig创建一个与defaul载波配置对象t properties.

example

carrier = nrCarrierConfig(Name,Value)specifies properties using one or more name-value pair arguments. Enclose each property in quotes. For example,'SubcarrierSpacing',30,'NSizeGrid',273specifies a 100 MHz carrier corresponding to 273 RBs and 30 kHz subcarrier spacing. Unspecified properties take their default values.

Properties

expand all

Subcarrier spacing in kHz, for all channels and reference signals of the carrier, specified as15,30,60,120, or240.

Data Types:double

Cyclic prefix length, specified as one of these options:

  • 'normal'— Use this value to specify normal cyclic prefix. This option corresponds to 14 OFDM symbols in a slot.

  • 'extended'— Use this value to specify extended cyclic prefix. This option corresponds to 12 OFDM symbols in a slot. For the numerologies specified in TS 38.211 Section 4.2, extended cyclic prefix length applies for only 60 kHz subcarrier spacing.

Data Types:char|string

Number of RBs in the carrier resource grid, specified as an integer from 1 to 275. The default value corresponds to the maximum number of RBs of a 10 MHz carrier with 15 kHz subcarrier spacing.

Data Types:double

Start of carrier resource grid relative to CRB 0, specified as an integer from 0 to 2199. This property is the higher-layer parameteroffsetToCarrier.

Data Types:double

Slot number, specified as a nonnegative integer. You can setNSlotto a value larger than the number of slots per frame. For example, you can set this value using transmission loop counters in a MATLAB®simulation. In this case, you may have to ensure that the property value is modulo the number of slots per frame in a calling code.

Data Types:double

System frame number, specified as a nonnegative integer. You can setNFrameto a value larger than the maximum frame number 1023. For example, you can set this value using transmission loop counters in a MATLAB simulation. In this case, you may have to ensure that the property value is modulo 1024 in a calling code.

Data Types:double

This property is read-only.

Number of OFDM symbols per slot, specified as14for normal cyclic prefix or12for extended cyclic prefix. The object sets this property based on theCyclicPrefixproperty.

Data Types:double

This property is read-only.

Number of slots per 1 ms subframe, specified as1,2,4,8, or16. The object sets this property based on theSubcarrierSpacingproperty values15,30,60,120, and240, respectively.

Data Types:double

This property is read-only.

每个10 ms的槽数帧, specified as10,20,40,80, or160. The object sets this property based on theSubcarrierSpacingproperty values15,30,60,120, and240, respectively.

Data Types:double

Examples

collapse all

Create a carrier configuration object with default properties. This object corresponds to a 10 MHz carrier.

carrier = nrCarrierConfig;

Create a CSI-RS configuration object with default properties.

csirs = nrCSIRSConfig;

Generate CSI-RS symbols ofsingledata type.

[sym,info_sym] = nrCSIRS(carrier,csirs,'OutputDataType','single');

Generate resource element indices for CSI-RS.

[ind,info_ind] = nrCSIRSIndices(carrier,csirs);

Create a carrier configuration object, specifying the slot number as10.

carrier = nrCarrierConfig('NSlot',10);

Create a CSI-RS resource configuration object for two periodic resources. Specify one NZP resource and one ZP resource with row numbers3and5, symbol locations13and9, and subcarrier locations6and4, respectively. For both resources, set the periodicity to5, offset to1, and density to'one'.

csirs = nrCSIRSConfig; csirs.CSIRSType = {'nzp','zp'}; csirs.CSIRSPeriod = {[5 1],[5 1]}; csirs.RowNumber = [3 5]; csirs.Density = {'one','one'}; csirs.SymbolLocations = {13,9}; csirs.SubcarrierLocations = {6,4};

Generate CSI-RS symbols and indices for the specified carrier, CSI-RS resource configuration, and output formatting name-value pair arguments. Verify the format of the symbols and indices.

[sym,info_sym] = nrCSIRS(carrier,csirs,...'OutputResourceFormat','cell')
sym=1×2 cell{0x1 double} {0x1 double}
info_sym =struct with fields:ResourceOrder: [2 1] KBarLBar: {{1x1 cell} {1x2 cell}} CDMGroupIndices: {[0] [0 1]} KPrime: {[0 1] [0 1]} LPrime: {[0] [0]}
[ind,info_ind] = nrCSIRSIndices(carrier,csirs,...'IndexStyle','subscript','OutputResourceFormat','cell')
ind=1×2 cell{0x3 uint32} {0x3 uint32}
info_ind =struct with fields:ResourceOrder: [2 1] KBarLBar: {{1x1 cell} {1x2 cell}} CDMGroupIndices: {[0] [0 1]} KPrime: {[0 1] [0 1]} LPrime: {[0] [0]}

Verify that the generated outputs are in the order of ZP-CSI-RS resources followed by NZP-CSI-RS resources in terms of the specifiedcsirs.CSIRSTypeindices.

info_sym.ResourceOrder
ans =1×22 1
info_ind.ResourceOrder
ans =1×22 1

References

[1]3GPP TS 38.211. “NR; Physical channels and modulation.”3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

See Also

Functions

Objects

Introduced in R2019b