5G/NR - PDSCH DMRS

 

                                                                              帮忙也同时扫码关注公众号,谢谢!


  • PDSCH DMRS序列

可见DRMS序列与符号位置 相关外,还与调度PDSCH的DCI以及RRC配置相关。

 

首先,仅在使用DCI format 1-1调度的PDSCH由DCI format 1-1中的DMRS sequence initialization field决定,其他情况则该值为0。因此只有DCI format 1-1能在之间选择。

 

其次,在C-RNTI/MCS-C-RNTI/CS-RNTI情况下,如果scramblingID0和/或scarmblingID1没有配置的情况下,使用小区ID。在其他RNTI情况下,则固定选取小区ID。

 

  • PDSCH DMRS频域位置

DMRS映射方式分为Configuration type 1和Configuration type 2两种,由DMRS-DownlinkConfig中的drms-Type指示,如果该field未配置,则默认为Configuration type 1。

频域的子载波参考起始位置k和PDCCH DMRS(NR - PDCCH学习总结)的描述是一致的,因为在接收SIB1时候,还不知道CRB#0的位置,因此其参考的是Coreset#0的起始位置。

                                                                                   Configuration type 1示例

 

                                                                                    Configuration type 2示例

 

  • PDSCH DMRS符号位置

DMRS的符号位置取决于PDSCH的mapping type,分为mapping type A和mapping type B,在NR - K0, K1, K2中介绍K0时候,参考表格或者配置可以获得PDSCH的mapping type。

 

两种mapping type在PDSCH的起始符号位置和PDSCH符号数的限制不同。

PDSCH mapping type A的PDSCH起始符号只能在前4个符号。

 

 

38.211中Table 7.4.1.1.2-3和Table 7.4.1.1.2-4,single-symbol DMRS还是double-symbol DMRS取决于配置maxLength。

 

如果没有配置maxLength或者maxLength配置为len1,则取值为len1(single-symbol);如果配置为len2(double-symbol),那么需要通过DCI来指示取值为len1还是len2。

 

 

 

以12个符号为例。

   


最后,通过时域/频域的正交序列,还可以定义多个Port。

(此图片来自www.sharetechnote.com)

 

 


点此留言

  • 13
    点赞
  • 94
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
以下是用MATLAB实现5G NR PDSCH DMRS解扰的示例代码: ``` % 5G NR PDSCH DMRS解扰 % 参数设置 N_ID = 1; % DMRS组ID(0-335) delta_ss = 0; % DMRS序列间隔(0或1) delta_p = 0; % DMRS位置(0或1) n_PRB = 50; % 资源块数 n_SC_RB = 12; % 每个资源块的子载波数 n_SC = n_PRB*n_SC_RB; % 总子载波数 n_RE = 12; % 每个OFDM符号的RE数 n_DMRS = 6; % DMRS符号数 n_sym = 14; % 用于PDSCH的OFDM符号数 n_ant = 2; % 天线数 % 生成DMRS序列 [n_cell_id, n_h] = nr_dmrs_pusch(N_ID, n_ant, delta_ss); dmrs_seq = nr_pusch_dmrs(n_cell_id, n_h, delta_p, n_PRB, n_DMRS, n_ant); % 生成PDSCH符号 pdsch_sym = zeros(n_SC,n_sym,n_ant); for i_sym = 1:n_sym pdsch_sym(:,:,i_sym) = randi([0,1],n_SC,n_ant); end % 插入DMRS符号 pdsch_sym_dmrs = zeros(n_SC,n_sym+n_DMRS,n_ant); for i_ant = 1:n_ant for i_sym = 1:n_sym pdsch_sym_dmrs(:,i_sym+(i_sym>n_DMRS),i_ant) = pdsch_sym(:,i_sym,i_ant); end pdsch_sym_dmrs(:,1:n_DMRS,i_ant) = dmrs_seq(:,:,i_ant); end % 解扰DMRS符号 pdsch_sym_dmrs_descrambled = zeros(n_SC,n_sym+n_DMRS,n_ant); for i_ant = 1:n_ant pdsch_sym_dmrs_descrambled(:,:,i_ant) = nr_pdsch_dmrs_descramble(pdsch_sym_dmrs(:,:,i_ant),N_ID,i_ant); end % 提取解扰后的DMRS符号 dmrs_sym_descrambled = pdsch_sym_dmrs_descrambled(:,1:n_DMRS,:); % 检查解扰后的DMRS符号与原DMRS符号是否一致 if isequal(dmrs_sym_descrambled,dmrs_seq) disp('DMRS符号解扰成功!'); else disp('DMRS符号解扰失败!'); end ``` 需要注意的是,以上代码仅实现了5G NR PDSCH DMRS解扰的基本过程,实际应用中还需要处理更多细节和异常情况。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值