文档

nrBCHDecode

广播信道解码

描述

例子

scrblk= nrBCHDecode (softbitsl解码对数似然比(llr)softbits符合TS 38.212,第7.1节[1].函数返回解码后的置乱BCH传输块scrblk.输入参数l用于极性解码的列表长度。

scrblkerrFlag= nrBCHDecode(softbitsl也返回一个错误标志,errFlag,表示是否scrblk包含解码后的错误。

scrblkerrFlagtrblklsbofsfnhrfmsbidxoffset= nrBCHDecode(softbitsllssbncellid也返回经过解码和解码的BCH传输块trblk.附加的输入参数是候选同步信号/物理广播通道(SS/PBCH)块的数量,lssb,以及物理层细胞标识号,ncellid.该函数还返回以下信息元素:

  • lsbofsfn为系统帧号的四个最低有效位(lsb)

  • hrf,半帧位

  • msbidxoffset,索引偏移量的最有效位(msb)

例子

全部折叠

生成对应于24位BCH传输块的二进制值随机序列。

TRBLK = randi([0 1],24,1,“int8”);

指定物理层单元标识号为321,系统帧号为10,后半帧。

Nid = 321;SFN = 10;HRF = 1;

指定候选SS/PBCH块的数量为8。当指定候选SS/PBCH块的数量为48,可以指定子载波偏移量kssb作为BCH编码器的输入参数。

LSSB = 8;KSSB = 18;

使用指定的参数编码BCH传输块。

cdblk = nrBCH(trblk,sfn,hrf,lssb,kssb,nid);

通过使用8位的极性解码列表来解码编码后的传输块并恢复信息。

listLen = 8;[~,errFlag,rxtrblk,rxSFN4lsb,rxHRF,rxKssb] = nrBCHDecode(...双(1 - 2 * bch)、listLen lssb, nid);

验证解码是否没有错误。

errFlag isequal(trblk,rxtrblk) isequal(bi2de(rxSFN4lsb',“left-msb”),mod(sfn,16)) [isequal(hrf,rxHRF) isequal(de2bi(floor(kssb/16),1),rxKssb)]

输入参数

全部折叠

近似对数似然比(LLR)软位,指定为864 × 1的实值列向量。

数据类型:|

极性解码列表长度,指定为2的幂。

数据类型:

半帧中候选SS/PBCH块的数量,指定为48,或64

数据类型:

物理层单元标识号,指定为0到1007之间的整数。

数据类型:

输出参数

全部折叠

解码的置乱BCH传输块,返回为32 × 1二进制列向量。

数据类型:int8

错误标志,指示是否scrblk包含一个错误,返回为01.如果errFlag1,则出现了错误。

数据类型:uint32

解码和解码的BCH传输块,作为24 × 1的二进制列向量返回。输出trblkBCCH-BCH-Message,定义见TS 38.331章节6.2.1[2].的BCCH-BCH-Message包含主信息块(MIB),定义见TS 38.331章节6.2.2。

数据类型:逻辑

系统帧号的四个lsb,作为一个4乘1的列向量返回。

数据类型:逻辑

SS/PBCH块传输中的半帧位,返回为0表示帧的前半部分或1表示一帧的下半部分。更多信息请参见TS 38.214章节4.1[3]

数据类型:逻辑

索引偏移量的msb,作为标量或3乘1的列向量返回。

  • 如果lssb48msbidxoffset是子载波索引的解码后MSB,作为标量返回。

  • 如果lssb64,的项msbidxoffset为SSB索引的三个解码后的msb,作为3乘1的列向量返回。

数据类型:逻辑

参考文献

[1]3gpp ts 38.212。“NR;多路复用和信道编码。”第三代伙伴关系项目;技术规范组无线电接入网

[2]3gpp ts 38.331。“NR;无线电资源控制(RRC)协议规范。第三代伙伴关系项目;技术规范组无线电接入网

[3]3gpp ts 38.214。“NR;数据的物理层程序。”第三代伙伴关系项目;技术规范组无线电接入网

扩展功能

另请参阅

功能

在R2018b中介绍