nrPDCCHSpace
Syntax
Description
returns physical downlink control channel (PDCCH) resource element indices
allInd
= nrPDCCHSpace(carrier
,pdcch
)allInd
for all candidates at each aggregation level, as defined in TS
38.211 Section 7.3.2 [1]. The input
carrier
specifies carrier configuration parameters for a specific
OFDM numerology. The input pdcch
specifies PDCCH configuration
parameters.
[
also returns PDCCH demodulation reference signal (DM-RS) symbols
allInd
,allDMRSSym
,allDMRSInd
] = nrPDCCHSpace(carrier
,pdcch
)allDMRSSym
and PDCCH DM-RS resource element indices
allDMRSInd
for all candidates at each aggregation level, as defined
in TS 38.211 Section 7.4.1.3.
[
specifies output formatting options using one or more name-value pair arguments.allInd
,allDMRSSym
,allDMRSInd
] = nrPDCCHSpace(carrier
,pdcch
,Name,Value
)
Examples
Generate PDCCH Indices for All Candidates and Aggregation Levels
Configure the carrier and the PDCCH with default configuration parameters.
carrier = nrCarrierConfig; pdcch = nrPDCCHConfig;
Generate all PDCCH resource element indices for all candidates and aggregation levels.
allInd = nrPDCCHSpace(carrier,pdcch)
allInd=5×1 cell array
{ 54x8 uint32}
{108x8 uint32}
{216x4 uint32}
{432x2 uint32}
{864x1 uint32}
Verify that the number of generated candidates for the PDCCH indices at each aggregation level matches the number of candidates specified by the default search space set.
numCandidates = [... size(allInd{1},2) ... size(allInd{2},2) ... size(allInd{3},2) ... size(allInd{4},2) ... size(allInd{5},2)]; isequaln(pdcch.SearchSpace.NumCandidates,numCandidates)
ans = logical
1
Generate PDCCH DM-RS Symbols for All Candidates and Aggregation Levels
Configure the carrier with default configuration parameters.
carrier = nrCarrierConfig;
Configure the CORESET with 6 frequency resources, a duration of 3 OFDM symbols, and a REG bundle size of 3.
crst = nrCORESETConfig; crst.FrequencyResources = ones(1,6); crst.Duration = 3; crst.REGBundleSize = 3;
Configure the search space set for the PDCCH with the specified number of candidates at each aggregation level.
cfgSS = nrSearchSpaceConfig; cfgSS.NumCandidates = [5 5 3 2 1];
Configure the PDCCH with the specified bandwidth part, CORESET, and search space set.
pdcch = nrPDCCHConfig; pdcch.NStartBWP = 6; pdcch.NSizeBWP = 36; pdcch.CORESET = crst; pdcch.SearchSpace = cfgSS;
Generate PDCCH DM-RS symbols for all candidates and aggregation levels.
[~,allDMRS] = nrPDCCHSpace(carrier,pdcch)
allDMRS=5×1 cell array
{ 18x5 double}
{ 36x5 double}
{ 72x3 double}
{144x2 double}
{288x1 double}
Verify that the number of generated candidates for the PDCCH DM-RS symbols at each aggregation level matches the number of candidates specified by the search space set.
numCandidates = [... size(allDMRS{1},2) ... size(allDMRS{2},2) ... size(allDMRS{3},2) ... size(allDMRS{4},2) ... size(allDMRS{5},2)]; isequaln(cfgSS.NumCandidates,numCandidates)
ans = logical
1
Generate PDCCH DM-RS Indices for All Candidates and Aggregation Levels
Configure a carrier grid of 60 resource blocks (RBs), where the starting RB index relative to the common resource block 0 (CRB 0) is 3.
carrier = nrCarrierConfig; carrier.NStartGrid = 3; carrier.NSizeGrid = 60;
Configure noninterleaved CORESET with 6 frequency resources and a duration of 3 OFDM symbols.
crst = nrCORESETConfig;
crst.FrequencyResources = ones(1,6);
crst.Duration = 3;
crst.CCEREGMapping = 'noninterleaved';
Configure the search space set for the PDCCH with the specified number of candidates at each aggregation level.
cfgSS = nrSearchSpaceConfig; cfgSS.NumCandidates = [5 5 3 2 1];
Configure the PDCCH with the specified bandwidth part, CORESET, and search space set.
pdcch = nrPDCCHConfig; pdcch.NStartBWP = 5; pdcch.NSizeBWP = 48; pdcch.CORESET = crst; pdcch.SearchSpace = cfgSS;
Generate PDCCH DM-RS resource element indices for all candidates and aggregation levels using 1-based, subscript indexing form relative to the BWP grid.
[~,~,allDMRSInd] = nrPDCCHSpace(carrier,pdcch, ... 'IndexOrientation','bwp','IndexStyle','subscript')
allDMRSInd=5×1 cell array
{ 18x3x5 uint32}
{ 36x3x5 uint32}
{ 72x3x3 uint32}
{144x3x2 uint32}
{288x3 uint32}
Verify that the number of generated candidates for PDCCH DM-RS indices at each aggregation level matches the number of candidates specified by the search space set.
numCandidates = [... size(allDMRSInd{1},3) ... size(allDMRSInd{2},3) ... size(allDMRSInd{3},3) ... size(allDMRSInd{4},3) ... size(allDMRSInd{5},3)]; isequaln(cfgSS.NumCandidates,numCandidates)
ans = logical
1
Input Arguments
carrier
— Carrier configuration parameters
nrCarrierConfig
object
Carrier configuration parameters for a specific OFDM numerology, specified as an nrCarrierConfig
object.
pdcch
— PDCCH configuration parameters
nrPDCCHConfig
object
PDCCH configuration parameters, specified as an nrPDCCHConfig
object.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN
, where Name
is
the argument name and Value
is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name
in quotes.
Example: 'IndexStyle','subscript','IndexBase','0based'
specifies the
indexing form and indexing base of the output.
IndexStyle
— RE indexing form
'index'
(default) | 'subscript'
RE indexing form, specified as one of these values:
'index'
— The indices are in linear index form.'subscript'
— The indices are in [subcarrier, symbol, antenna] subscript row form.
Data Types: char
| string
IndexBase
— RE indexing base
'1based'
(default) | '0based'
RE indexing base, specified as one of these values:
'1based'
— The index counting starts from 1.'0based'
— The index counting starts from 0.
Data Types: char
| string
IndexOrientation
— Indexing orientation of PDCCH and DM-RS resource elements
'carrier'
(default) | 'bwp'
Indexing orientation of PDCCH and DM-RS resource elements, specified as the
comma-separated pair consisting of 'IndexOrientation'
and one of
these values:
'carrier'
— Indices are referenced with respect to the carrier grid.'bwp'
— Indices are referenced with respect to the bandwidth part.
Data Types: char
| string
OutputDataType
— Data type of PDCCH DM-RS symbols
'double'
(default) | 'single'
Data type of PDCCH DM-RS symbols, specified as the comma-separated pair consisting of
'OutputDataType'
and one of these values:
'double'
— Output symbols are ofdouble
data type.'single'
— Output symbols are ofsingle
data type.
Data Types: char
| string
Output Arguments
allInd
— PDCCH resource element indices for all candidates at each aggregation level
5-by-1 cell array
PDCCH resource element indices for all candidates at each aggregation level,
returned as a 5-by-1 cell array. The five cells correspond to aggregation levels 1, 2,
4, 8, and 16, respectively. Each cell contains a matrix corresponding to all candidates
at the appropriate aggregation level. The dimensionality of all matrices is either two
or three, depending on the 'IndexStyle
' name-value pair argument.
The last dimension of each matrix corresponds to the number of candidates specified by
the
property for
the appropriate aggregation level.pdcch
.SearchSpace.NumCandidates
Data Types: uint32
allDMRSSym
— PDCCH DM-RS symbols for all candidates at each aggregation level
5-by-1 cell array
PDCCH DM-RS symbols for all candidates at each aggregation level, returned as a
5-by-1 cell array. The five cells correspond to aggregation levels 1, 2, 4, 8, and 16,
respectively. Each cell contains a 2-D matrix corresponding to all candidates at the
appropriate aggregation level. The number of matrix columns in each cell corresponds to
the number of candidates specified by the
property for
the appropriate aggregation level.pdcch
.SearchSpace.NumCandidates
Data Types: single
| double
allDMRSInd
— PDCCH DM-RS resource element indices for all candidates at each aggregation level
5-by-1 cell array
PDCCH DM-RS resource element indices for all candidates at each aggregation level,
returned as a 5-by-1 cell array. The five cells correspond to aggregation levels 1, 2,
4, 8, and 16, respectively. Each cell contains a matrix corresponding to all candidates
at the appropriate aggregation level. The dimensionality of all matrices is either two
or three, depending on the 'IndexStyle
' name-value pair argument.
The last dimension of each matrix corresponds to the number of candidates specified by
the
property for
the appropriate aggregation level.pdcch
.SearchSpace.NumCandidates
Data Types: uint32
References
[1] 3GPP TS 38.211. “NR; Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.
[2] 3GPP TS 38.213. “NR; Physical layer procedures for control.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
The
'OutputDataType'
name-value argument must be compile-time constant for
code generation. For example, when you call the function with
'OutputDataType','single'
, include
{coder.Constant('OutputDataType'),coder.Constant('single')}
in the
-args
value of the codegen
function. For more
information, see the coder.Constant
(MATLAB Coder) class.
Version History
Introduced in R2020aR2023a: C/C++ code generation updates
For C/C++ code generation, the limitation to specify 'IndexStyle'
,
'IndexBase'
, or 'IndexOrientation'
name-value
arguments as compile-time constants has been removed.
R2020b: DM-RS reference point update for CORESET ID 0
Starting in R2020b, the reference point for the DM-RS sequence-to-subcarrier resource mapping for CORESET ID 0 is the lowest physical resource block of the CORESET instead of CRB 0. This update affects the resources that you generate with this function for CORESET ID 0. For all other CORESET ID values, the reference point remains CRB0.
See Also
Functions
Objects
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)