主要内容

nrDLSCH

应用DL-SCH编码器处理链

自从R2019a

描述

nrDLSCH系统对象™应用下行共享信道(DL-SCH)编码器处理链到一个或两个传输块。DL-SCH编码过程由循环冗余校验(CRC),代码块分割和CRC,低密度奇偶校验码(LDPC)编码,连接速度匹配和代码块。系统对象实现TS 38.212 7.2节[1]

应用DL-SCH编码器处理链:

  1. 创建nrDLSCH对象并设置其属性。

  2. 调用对象的参数,就好像它是一个函数。

了解更多关于系统对象是如何工作的,看到的系统对象是什么?

创建

描述

encDL= nrDLSCH创建一个DL-SCH编码器系统对象。

encDL= nrDLSCH (名称,值)创建对象的属性设置通过使用一个或多个名称-值对。附上报价内的属性名,其次是指定值。未指定的属性的默认值。

例子:例如,nrDLSCH (MultipleHARQProcesses,真的)创建对象并使多个混合自动重发请求(HARQ)过程。

属性

全部展开

属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放函数打开它们。

如果一个属性可调在任何时候,你可以改变它的值。

改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象

启用多个HARQ进程,指定为真正的。当设置为,对象使用一个单一的过程。当设置为真正的,对象使用多个HARQ进程,最多32。在这两种情况下,使重发失败发生时,对象缓冲区输入数据。

数据类型:逻辑

目标代码,指定为数字标量或1×2数值向量。的值必须是间隔(0,1)。默认值对应于526/1024。如果您指定TargetCodeRate一个标量,对象应用标量扩张在处理两个传输块。为每个传输块指定不同的目标代码率,指定TargetCodeRate作为一个向量。

可调:是的

数据类型:

有限的缓冲区大小用于速度匹配,指定为一个正整数。默认值对应于384×66,这是一个代码块的最大编码长度。默认值意味着缓冲区大小没有限制。

数据类型:

使用

描述

例子

codedBits= encDL (国防部,nLayers,outlen,房车)DL-SCH编码器处理链适用于一个或两个传输块。对象返回编码、rate-matched和连接代码块作为一个或两个码字的长度outlen。在您调用这个对象之前,您必须传输块加载到对象使用setTransportBlock对象的功能。国防部指定了调制方案。nLayers指定数量的传输层。房车指定的冗余版本传播。

例子

codedBits= encDL (___,harqID)指定HARQ进程数harqID使用当前的传输除了输入参数在前面的语法。使用这个语法,设置MultipleHARQProcesses财产真正的。当属性设置,对象使用HARQ过程数字0。

在处理两个传输块时,指定每个传输块的数量相同的HARQ过程调用setTransportBlock函数。

输入参数

全部展开

调制方案,指定为“正交相移编码”,16 qam的,64 qam,256 qam,1024 qam、字符串数组或单元阵列的特征向量。这个调制方案决定调制类型和使用的比特数/调制符号。两个传输块的调制方案适用于两块。或者,您可以为每个传输块指定不同的调制方案通过使用一个字符串数组或单元阵列特征向量。

调制方案 每个符号的比特数
“正交相移编码” 2
16 qam的 4
64 qam 6
256 qam 8
1024 qam 10

数据类型:字符|字符串

传输层的数量,指定为一个从1到8的整数。为nLayers> 4,预计两个传输块的对象。

数据类型:

位,输出码字长度指定为非负整数或1×2整数向量。如果您指定outlen一个标量,对象应用标量扩张在处理两个传输块。指定一个不同码字长度为每个传输块指定outlen作为一个向量。

实际的输出长度的多个产品的每个符号的比特数和数量的传输层。例如,对于64 - qam和1传输层,如果指定16outlen,实际的输出长度是6 x1x3 = 18。

数据类型:

冗余版本,指定这些选项之一。

  • 整数,从0到3 -使用这个选项指定一个传输块的冗余版本。

  • 从0到3 - 1×2整数向量使用这个选项指定两个传输块的冗余版本。

数据类型:

HARQ进程数量,指定为一个整数,从0到31日。指定一个值而不是0,设置MultipleHARQProcesses对象属性真正的

数据类型:

输出参数

全部展开

一个或两个DL-SCH密语,作为二进制列向量或返回单元阵列两个二进制列向量。编码码字,rate-matched,连接代码块处理得到的一个交通阻塞。指定使用的码字的长度outlen输入参数。

数据类型:int8

对象的功能

使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj使用这个语法:

发行版(obj)

全部展开

getTransportBlock 从UL-SCH得到交通阻塞或DL-SCH编码器
setTransportBlock 传输块加载到UL-SCH或DL-SCH编码器
一步 运行系统对象算法
克隆 创建重复的系统对象
isLocked 确定系统对象在使用
释放 释放资源,并允许修改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

生成一个随机序列的二进制值对应于一个传输块长度为5120。

trBlkLen = 5120;trBlk =兰迪([0 1]trBlkLen 1,“int8”);

创建和配置一个DL-SCH编码器系统对象与指定的目标代码。

targetCodeRate = 567/1024;encDL = nrDLSCH;encDL。TargetCodeRate = TargetCodeRate;

传输块加载到DL-SCH编码器。

setTransportBlock (encDL trBlk);

调用编码器与64 - qam调制方案,1传输层,输出10240位的长度,和冗余版本0。编码器应用DL-SCH处理链传输块加载到对象。

mod =64 qam;nLayers = 1;outlen = 10240;房车= 0;codedTrBlock = encDL (mod, nLayers outlen, rv);

创建和配置一个DL-SCH解码器系统对象。

decDL = nrDLSCHDecoder;decDL。TargetCodeRate = TargetCodeRate;decDL。TransportBlockLength = trBlkLen;

调用DL-SCH解码器在软比特代表编码传输块。对编码器使用指定的配置参数。错误标志在输出表明,块解码没有错误。

rxSoftBits = 1.0 - 2.0 *双(codedTrBlock);[decbits, blkerr] = decDL (mod, rxSoftBits nLayers, rv)
decbits =5120年x1 int8列向量1 1 0 1 1 0 0 1 1 1⋮
blkerr =逻辑0

确认消息发送和接收部分是相同的。

isequal (decbits trBlk)
ans =逻辑1

生成一个随机序列的二进制值对应于一个传输块长度为5120。

trBlkLen = 5120;trBlk =兰迪([0 1]trBlkLen 1,“int8”);

创建和配置一个DL-SCH编码器系统对象为多个HARQ进程使用。

encDL = nrDLSCH;encDL。MultipleHARQProcesses = true;

负载传输块trBlk传输块编号0 DL-SCH编码器,指定HARQ过程2号。

harqID = 2;trBlkID = 0;setTransportBlock (encDL trBlk、trBlkID harqID);

调用QPSK调制方案的编码器,3传输层,输出10002位的长度,和冗余版本3。编码器应用DL-SCH处理链传输块加载到对象HARQ过程2号。

mod =“正交相移编码”;nLayers = 3;outlen = 10002;房车= 3;codedTrBlock = encDL (mod, nLayers outlen,房车,harqID);

验证编码传输块所需的比特数。

isequal(长度(codedTrBlock)、outlen)
ans =逻辑1

引用

[1]3 gpp TS 38.212。“NR;多路复用和信道编码”。第三代合作伙伴项目;技术规范集团无线接入网络

扩展功能

版本历史

介绍了R2019a

全部展开