主要内容

nrULSCHDecoder

应用UL-SCH解码器处理链

自从R2019a

描述

nrULSCHDecoder系统对象™将上行共享通道(UL-SCH)解码器处理链应用于与UL-SCH编码的传输块对应的软位。UL-SCH译码过程包括速率恢复、低密度奇偶校验(LDPC)译码、解分割和循环冗余校验(CRC)译码。该对象实现TS 38.212节中指定的UL-SCH编码过程的逆操作[1]

  • 章节6.2.1:传输块CRC附件

  • 章节6.2.2:LDPC基图选择

  • 第6.2.3节:代码块分割和代码块CRC附件

  • 第6.2.4节UL-SCH的信道编码

  • 第6.2.5节:速率匹配

  • 第6.2.6节:代码块连接

应用UL-SCH解码器处理链:

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

  2. 使用参数调用对象,就像调用函数一样。

有关系统对象如何工作的详细信息,请参见什么是系统对象?

创建

描述

decUL= nrULSCHDecoder创建一个UL-SCH解码器系统对象。

decUL= nrULSCHDecoder (名称,值创建使用一个或多个名称-值对设置的属性的对象。将属性名括在引号内,后跟指定的值。未指定的属性采用默认值。

例子:例如,nrULSCHDecoder (MultipleHARQProcesses,真的)创建对象并启用多个混合自动重复请求(HARQ)进程。

属性

全部展开

除非另有说明,属性为<年代pan class="emphasis">nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放功能解锁它们。

如果属性为<年代pan class="emphasis">可调,您可以随时更改其值。

有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计

启用多个HARQ进程,指定为真正的.当设置为,对象使用单个进程。当设置为真正的,该对象使用多个HARQ进程,最多32个。为了在LDPC解码之前实现软合并重传,对象为每个HARQ进程维护一个软缓冲区。

数据类型:逻辑

目标码率,指定为间隔(0,1)中的实数。默认值对应于526/1024。

可调:是的

数据类型:

已解码传输块的长度,以位为单位,指定为正整数。

可调:是的

数据类型:

启用有限的缓冲区速率恢复,指定为真正的.当设置为,用于速率恢复的内部缓冲区的大小是每个代码块的完整编码长度。当设置为真正的时,可以指定用于速率恢复的内部缓冲区的大小LimitedBufferSize财产。

数据类型:逻辑

用于速率恢复的有限缓冲区大小,指定为正整数。默认值对应于384×66,这是一个代码块的最大编码长度。默认值表示不限制缓冲区大小。

依赖关系

若要启用此属性,请设置LimitedBufferRateRecovery真正的

数据类型:

最大LDPC解码迭代次数,指定为正整数。由于启用了提前终止,一旦奇偶校验得到满足,解码就会停止。在这种情况下,发生的迭代次数少于该参数指定的最大值。

数据类型:

LDPC解码算法,指定为以下值之一:

  • “信念传播”—指定信念传递算法或消息传递算法。

  • “分层信仰传播”-使用此选项指定分层的信念传递算法,该算法适用于准循环奇偶校验矩阵(pcm)。

  • “规范化min-sum”-使用此选项指定带有规范化最小和近似的分层信念传播算法。

  • “抵消min-sum”-使用此选项指定带有偏移最小和近似的分层信念传播算法。

有关这些算法的更多信息,请参见LDPC译码算法

数据类型:字符|字符串

标准化最小和解码的比例因子,指定为范围(0,1]中的实标量。

依赖关系

属性可启用此属性LDPCDecodingAlgorithm财产“规范化min-sum”

数据类型:

用于偏移量最小和解码的偏移量,指定为非负的有限实标量。

依赖关系

属性可启用此属性LDPCDecodingAlgorithm财产“抵消min-sum”

数据类型:

使用

描述

例子

trblk= decUL (softbits国防部nLayers房车将UL-SCH解码器处理链应用于输入softbits并返回解码后的位。国防部指定调制方案。nLayers传输层数。房车指定传输的冗余版本。

trblk= decUL (<年代pan class="argument_placeholder">___harqIDHARQ进程号harqID在前面的语法中,除了输入参数外,还用于当前传输块。要使用此语法,请设置MultipleHARQProcesses财产真正的.属性设置为时,该对象使用HARQ进程号为0。

当对象接收到不同HARQ进程的冗余版本的码字时,对象使用软缓冲区状态保持来支持软合并重传。当启用多个HARQ进程时,对象为每个进程维护独立的缓冲区。

trblkblkerr] = decUL(<年代pan class="argument_placeholder">___使用前面任何语法中的输入参数返回一个错误标志。值为1英寸blkerr表示传输块解码过程中发生错误。

输入参数

全部展开

近似对数似然比(LLR)软位,对应于ul - sch编码的传输块,指定为实列向量。

数据类型:|

调制方案,指定为“π/ 2-BPSK”“正交相移编码”16 qam的64 qam,或256 qam.这种调制方案决定了调制类型和每个调制符号使用的比特数。

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

数据类型:字符|字符串

传输层数,取值为1 ~ 4之间的整数。有关更多信息,请参见TS 38.211章节6.3.1.3。

数据类型:

冗余版本,指定为0 ~ 3之间的整数。

数据类型:

HARQ进程号,取值为0 ~ 31之间的整数。若要指定0以外的值,请设置MultipleHARQProcesses对象属性设置为真正的

数据类型:

输出参数

全部展开

类型指定长度的二进制列向量返回TransportBlockLength财产。

UL-SCH传输块解码的结果,作为逻辑标量返回。值为1表示传输块解码过程中发生错误。

数据类型:逻辑

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj,使用这种语法:

发行版(obj)

全部展开

resetSoftBuffer 在UL-SCH或DL-SCH解码器中重置HARQ进程的软缓冲区
一步 运行<年代pan class="trademark entity">系统对象算法
克隆 创建重复的<年代pan class="trademark entity">系统对象
isLocked 确定<年代pan class="trademark entity">系统对象正在使用中
释放 释放资源并允许更改<年代pan class="trademark entity">系统对象属性值和输入特征
重置 重置的内部状态<年代pan class="trademark entity">系统对象

例子

全部折叠

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

trBlkLen = 5120;trBlk = randi([0 1],trBlkLen,1,<年代pan style="color:#A020F0">“int8”);

创建并配置具有指定目标码率的UL-SCH编码器系统对象。

targetCodeRate = 567/1024;encUL = nrULSCH;encUL。TargetCodeRate = targetCodeRate;

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

setTransportBlock (encUL trBlk);

调用编码器64-QAM调制方案,1传输层,输出长度为10240位,冗余版本为0。编码器将UL-SCH处理链应用于加载到对象中的传输块。

mod =<年代pan style="color:#A020F0">64 qam;nLayers = 1;Outlen = 10240;Rv = 0;codedTrBlock = encUL(mod,nLayers,outlen,rv);

创建并配置UL-SCH解码器系统对象。

decUL = nrULSCHDecoder;decUL。TargetCodeRate = targetCodeRate; decUL.TransportBlockLength = trBlkLen;

在表示已编码传输块的软位上调用UL-SCH解码器。使用为编码器指定的配置参数。输出中的error标志表示块解码没有错误。

rxSoftBits = 1.0 - 2.0*double(codedTrBlock);[decbits,blkerr] = decUL(rxSoftBits,mod,nLayers,rv)
decbits =<年代pan class="emphasis">5120x1 int8列向量1 1 0 1 1 0 0 1 1 1
blkerr =<年代pan class="emphasis">逻辑0

验证发送和接收的消息位是否相同。

isequal (decbits trBlk)
ans =<年代pan class="emphasis">逻辑1

算法

全部展开

参考文献

[1]<年代pan>3gpp ts 38.212。“NR;多路复用和信道编码。”第三代伙伴计划;技术规范集团无线接入网

[2]<年代pan>3gpp ts 38.211。“NR;物理通道和调制。”第三代伙伴计划;技术规范集团无线接入网

[3] Robert G. Gallager。<年代pan class="emphasis">低密度奇偶校验码马萨诸塞州剑桥,麻省理工学院出版社,1963年。

[4] Hocevar D.E.“通过LDPC码的分层解码来降低解码器结构的复杂性。”在<年代pan class="emphasis">IEEE信号处理系统研讨会,2004。口2004.doi: 10.1109 / SIPS.2004.1363033

[5]陈静虎,R.M.坦纳,C.琼斯和李燕。改进的不规则LDPC码最小和译码算法。在<年代pan class="emphasis">程序。国际信息理论学术研讨会,2005。2005年有更深的了解.doi: 10.1109 / ISIT.2005.1523374

扩展功能

版本历史

在R2019a中引入

全部展开

另请参阅

对象

  • |<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">

功能

  • |<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">