ZZ:码字,层映射,秩,预编码(1)_基本概念

看了很多关于码字,秩,层映射和预编码的文章,我认为这篇时看到最好的:
http://hsrcom.bjtu.edu.cn/bbs/forum.php?mod=viewthread&tid=201

LTE物理层几个基本概念的定义和相互关系

+++++++++++++++++++++++++++++++++++++++++++++                  

传输块(transportblock),码字(codeword),层映射(layermapping),传输层(transmission layer),阶(rank),和预编码Precoding),天线端口(antennaport)是LTE物理层的几个基本概念,搞清楚这几个概念的定义和相互关系才能透彻理解LTE多天线技术和调度算法。

传输块(Transport block):理解为MAC PDU
一个传输块就是包含MACPDU的一个数据块,这个数据块会在一个TTI上传输,也是HARQ重传的单位。LTE规定:对于每个终端一个TTI最多可以发送两个传输块。

 码字(codeword):经过信道编码和速率匹配以后的数据码流
一个码字就是在一个TTI上发送的包含了CRC位并经过了编码(Encoding)和速率匹配(Ratematching)之后的独立传输块(transportblock)。LTE规定:对于每个终端一个TTI最多可以发送两个码字。

 层映射(Layermapping):将码流映射到层,由于码字与层不相等,所以需要层映射
将对一个或两个码字分别进行扰码(Scrambling)和调制(Modulation)之后得到的复数符号根据层映射矩阵映射到一个或多个传输层。层映射矩阵的维数为C×R,C为码字的个数,R为阶,也就是使用的传输层的个数。

 传输层(Transmissionlayer)和阶(Rank)
一个传输层对应于一个无线发射模式。使用的传输层的个数就叫阶(Rank)。

RI:Rankindicator:用于指示PDSCH物理信道的传输层数

 预编码(Precoding):根据预编码矩阵将传输层映射到天线端口。预编码矩阵的维数为R×P,R为阶,也就是使用的传输层的个数;P为天线端口的个数。

 天线端口(AntennaPort)
一个天线端口(antennaport)可以是一个物理发射天线,也可以是多个物理发射天线的合并。在这两种情况下,终端(UE)的接收机(Receiver)都不会去分解来自一个天线端口的信号,因为从终端的角度来看,不管信道是由单个物理发射天线形成的,还是由多个物理发射天线合并而成的,这个天线端口对应的参考信号(ReferenceSignal)就定义了这个天线端口,终端都可以根据这个参考信号得到这个天线端口的信道估计。

LTE定义了最多4个小区级天线端口,因此UE能得到四个独立的信道估计,每个天线端口分别对应特定的参考信号模式。为了尽量减小小区内不同的天线端口之间的相互干扰,如果一个资源元素(Resourceelement)用来传输一个天线端口的参考信号,那么其它天线端口上相应的资源元素空闲不用。

LTE还定义了终端专用参考信号,对应的是独立的第5个天线端口。终端专用参考信号只在分配给传输模式7(transmissionmode)的终端的资源块(ResourceBlock)上传输,在这些资源块上,小区级参考信号也在传输,这种传输模式下,终端根据终端专用参考信号进行信道估计和数据解调。终端专用参考信号一般用于波束赋形(beamforming),此时,基站(eNodeB)一般使用一个物理天线阵列来产生定向到一个终端的波束,这个波束代表一个不同的信道,因此需要根据终端专用参考信号进行信道估计和数据解调。

port:0~3号实际对应得是现实中的物理天线;

port4应用于SFN中;

port5用于beamforming。具体区分这几个端口的依据是天线上发射的的RS信号类型。

总之,一个天线端口就是一个信道,终端需要根据这个天线端口对应的参考信号进行信道估计和数据解调。

 码字个数、阶和天线端口数之间的关系

传输块个数 = 码字个数(C)<=阶(R)<=天线端口数(P)

在LTE系统中,一个TTI只能有1 or 2个传输块。但信道的RANK,也就是层可以有1~4个,甚至更多 
  • 10
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是5G NR PDSCH加扰、调制、映射预编码、加DM-RS的MATLAB代码示例: ``` % 参数设置 MCS = 5; % 调制阶数 Nrb = 50; % RB数 Ninfo = Nrb*12*14; % 信息比特数 Qm = 2; % 星座点数 Nlayers = 2; % 天线数 Nre = Nrb*12; % RB上RE数 Nsymbs = 1; % 符号数 Nscid = 0; % SCID Nid = 1; % ID Nid2 = 0; % ID2 Nant = 4; % 天线数 Nprb = 25; % PRB数 Ncellid = 0; % 小区ID Ncp = 'normal'; % 循环前缀类型 Ndmrs = 'on'; % 是否加DM-RS Ndmrsconfig = 0; % DM-RS配置 Ndmrsoffset = 0; % DM-RS偏移量 Ncyclicshift = 0; % 循环移位 % 生成随机的信息比特 info_bits = randi([0,1],Ninfo,1); % 信道编码 coded_bits = lteConvolutionalEncode(info_bits); % 块分组 K = 8448; Z = 1024; n = ceil(length(coded_bits)/K); Q = n*Z; padded_bits = [coded_bits; zeros(Q-length(coded_bits),1)]; C = reshape(padded_bits,Z,n).'; % 信道编码后的调制符号 modulated_syms = lteSymbolModulate(C,Qm); % 生成PDSCH符号 pdsch_symbols = reshape(modulated_syms,Nre,Nlayers*Nsymbs); % 进行加扰 c_init = 0; pdsch_symbols_scrambled = ltePDSCH(coded_bits,Nrb,MCS,Qm,Nlayers,Nid,Nid2,Nscid,Ncellid,c_init); % 进行映射 pdsch_layer_mapped = lteLayerMap(pdsch_symbols_scrambled,Nlayers); % 进行预编码 pdsch_precoded = lteDLPrecode(pdsch_layer_mapped,Nant); % 加DM-RS dmrs_symbols = lteDMRS(Nid,Nid2,Nscid,Ndmrsconfig,Nant,Nprb,Ndmrsoffset,Ncellid); pdsch_dmrspadded = ltePDSCH(pdsch_precoded,Nrb,MCS,Qm,Nlayers,Nid,Nid2,Nscid,Ncellid,c_init,dmrs_symbols); % 进行OFDM调制 ofdm_symbols = lteOFDMModulate(pdsch_dmrspadded,Nrb,Ncp,Ncyclicshift); % 将OFDM符号串行化 tx_waveform = reshape(ofdm_symbols,[],1); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值