Main Content

scheduleNewTransmissionsDL

Class: nrScheduler

Schedule New DL Transmissions

Since R2024b

Description

dlAssignments = scheduleNewTransmissionsDL(newradioscheduler,timeResource,frequencyResource,schedulingInfo) assigns frequency resources to the user equipment (UE) nodes for new downlink (DL) transmissions in a transmission time interval (TTI). The timeResource argument specifies the TTI. For a given TTI, The New Radio (NR) scheduler calls this function once it has met any DL retransmission needs for the UE nodes. Thus, not all frequency resources in the bandwidth remain available for new transmission scheduling within this transmission time interval (TTI).

Input Arguments

expand all

NR scheduler, specified as an object of a subclass of nrScheduler.

Time resource, specified as a structure representing the TTI, detailing the time symbols being scheduled by the scheduler. The structure contains these fields:

  • NFrame — Absolute frame number of the symbols being scheduled.

  • NSlot — Slot number within the frame NFrame that contains the symbols being scheduled.

  • SymbolAllocation — Vector with two elements [StartSym NumSym] that define the range of symbols being scheduled within the slot NSlot of the frame NFrame.

    • StartSym — Start symbol number within the slot NSlot, marking the beginning of the TTI.

    • NumSym — Number of consecutive symbols being scheduled starting from StartSym. This defines the length of the TTI in terms of symbols.

Note

The fields NFrame, NSlot, and StartSym follow a zero-based numbering system.

Frequency resource, specified as one of these options.

  • When you set the ResourceAllocationType name-value argument of the configureScheduler function to 1 (RAT-1), frequencyResource is a bit array with a length equal to the number of resource blocks (RBs) in the DL bandwidth. Each bit represents an RB. A bit value of 0 indicates that the corresponding RB is available for new transmission scheduling, whereas a value of 1 indicates the RB is unavailable.

  • When you set the ResourceAllocationType name-value argument to 0 (RAT-0), FREQUENCYRESOURCE is a bit array with a length equal to the number of resource block groups (RBGs) in the DL bandwidth. Each bit represents an resource block group (RBG). A bit value of 0 indicates that the corresponding RBG is available for new transmission scheduling, whereas a value of 1 indicates the RBG is unavailable. To determine the size of an RBG, the nrScheduler class uses Configuration 1 as described in TS 38.214, Table 5.1.2.2.1-1 [1].

When retransmissions consume all frequency resources in a TTI, the scheduler does not invoke this function for that TTI.

Scheduling information, specified as a structure containing the information for scheduling decisions within a TTI. The structure contains these fields:

  • EligibleUEs — Array containing the Radio Network Temporary Identifiers (RNTIs) of user equipment (UE) nodes eligible for allocation in the current TTI. This set comprises all UE nodes connected to the gNB, except those meeting any of these criteria:

    • The UE node has a scheduled retransmission in this TTI.

    • The UE node has no data queued.

    • The UE node has all its hybrid automatic repeat request (HARQ) processes blocked.

    When no UE nodes meet the eligibility criteria due to these conditions, the scheduler does not invoke this function.

  • MaxNumUsersTTI — Maximum number of UE nodes eligible for new transmissions within the TTI, adjusted for retransmissions. The value equals the maximum allowed users in a TTI minus the number of UE nodes scheduled for retransmissions in that TTI. For more information about the maximum allowed users in a TTI, see the MaxNumUsersPerTTI name-value argument of the configureScheduler function. The scheduler calls this function if the value of this field is greater than zero.

    In addition to the information in schedulingInfo, the scheduler can use any other context from the scheduler object, newradioscheduler, to determine resource allocation to UE nodes.

Output Arguments

expand all

Physical downlink shared channel (PDSCH) assignments, returned as an array of structures. The number of elements in the array does not exceed the MaxNumUsersTTI field of the schedulingInfo argument. Each structure represents one PDSCH assignment for a UE node and contains these fields:

  • RNTI — Radio network temporary identifier of the UE node. This RNTI is a value of the EligibleUEs field of the schedulingInfo argument.

  • FrequencyAllocation — Frequency allocation for the UE node, returned as one of these options:

    • For RAT-1, it is a vector of two elements indicating the start RB and the number of RBs, with the start RB following a zero-based numbering system.

    • For RAT-0, it is a bit vector with a length equal to frequencyResource. A value of 1 at an index indicates the scheduler has allocated the corresponding RBG to the UE node.

  • W — Selected precoding matrix, sized NumLayers-by-Ngnbtx, where Ngnbtx is the number of gNB transmit antennas. The number of rows indicates the number of transmission layers for the PDSCH. To set W, you can use the CSIMeasurementDL property of the UE context object with the corresponding RNTI.

  • MCSIndex — Selected modulation and coding scheme, represented as a zero-based row index in the MCS table as described in the TS 38.214, Table 5.1.3.1-2 [1]. The value of the MCSIndex field is an integer in the range [0, 27].

References

[1] 3GPP TS 38.321. “NR; Medium Access Control (MAC) protocol specification.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

[2] 3GPP TS 38.214. “NR; Physical layer procedures for data.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

Version History

Introduced in R2024b