nrULSCH
Apply UL-SCH encoder processing chain
Description
The nrULSCH
System object™ applies the uplink shared channel (UL-SCH) encoder processing chain to one or
two transport blocks. The UL-SCH encoding process consists of cyclic redundancy check (CRC),
code block segmentation and CRC, low-density parity-check (LDPC) encoding, rate matching, and
code block concatenation. The object implements these aspects of TS 38.212 [1]:
Sections 6.2.1: Transport block CRC attachment
Sections 6.2.2: LDPC base graph selection
Sections 6.2.3: Code block segmentation and code block CRC attachment
Sections 6.2.4: Channel coding of UL-SCH
Sections 6.2.5: Rate matching
Sections 6.2.6: Code block concatenation
To apply the UL-SCH encoder processing chain:
Create the
nrULSCH
object and set its properties.Call the object with arguments, as if it were a function.
To learn more about how System objects work, see What Are System Objects?
Creation
Description
creates a UL-SCH encoder
System object.encUL
= nrULSCH
creates the object with properties set by using one or more name-value pairs. Enclose the
property name inside quotes, followed by the specified value. Unspecified properties take
default values.encUL
= nrULSCH(Name,Value
)
Example: For example, nrULSCH('MultipleHARQProcesses',true)
creates
the object and enables multiple hybrid automatic repeat-request (HARQ)
processes.
Properties
Usage
Description
applies the UL-SCH encoder processing chain to one or two transport blocks. The object
returns the encoded, rate-matched, and concatenated code blocks as one or two codewords of
length codedBits
= encUL(mod
,nLayers
,outlen
,rv
)outlen
. Before you call this object, you must load the
transport blocks into the object by using the setTransportBlock
object function. mod
specifies the modulation scheme.
nLayers
specifies the number of transmission layers.
rv
specifies the redundancy version of the transmission.
specifies the HARQ process number codedBits
= encUL(___,harqID
)harqID
used with the current
transmission in addition to the input arguments in the previous syntax. To use this
syntax, set the MultipleHARQProcesses
property to true
. When
the property is set to false
, the object uses HARQ process number
0.
Input Arguments
Output Arguments
Object Functions
To use an object function, specify the
System object as the first input argument. For
example, to release system resources of a System object named obj
, use
this syntax:
release(obj)
Examples
References
[1] 3GPP TS 38.212. “NR; Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.
[2] 3GPP TS 38.211. “NR; Physical channels and modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.