主要内容

混合PUCCH格式的传输和接收

这个例子展示了物理上行控制信道(PUCCH)格式1和格式2的传输和接收,包括使用LTE工具箱™从两个不同的用户设备(ue)同时传输格式1和格式2的情况。

介绍

本示例配置两台终端,分别从第一个终端发送PUCCH Format 1信号和从第二个终端发送PUCCH Format 2信号。适当的解调参考信号(DRS)也会产生。发射信号通过两个不同的衰落信道,加上加性高斯白噪声(AWGN),模拟两个终端在eNodeB上接收信号。然后对每个信号(即属于每个UE的信号)进行同步、SC-FDMA解调、均衡、PUCCH解调,最后解码。生成的图表明,即使它们共享相同的物理资源元素(REs),也可以对两个不同信号独立地估计信道。

问题1的配置

第一个UE使用结构进行配置ue1

ue1。NULRB = 6;%资源块数ue1。N年代ubframe = 0;%子帧数ue1。NCellID = 10;%物理层单元标识ue1。RNTI = 61;%无线网络临时标识符ue1。CyclicPrefixUL =“正常”%循环前缀ue1。跳=“关闭”%跳频ue1。年代hortened = 0;%为SRS传输保留最后的符号ue1。NTxAnts = 1;%发送天线数

问题2配置

类似地,配置结构用于配置第二个UE,ue2.这种结构与的配置是相同的ue1有两个例外:

  • 没有缩短字段,因为这不适用于PUCCH格式2。

  • 不同的无线网络临时标识符(RNTI)值(这里没有使用,因为它只与物理上行共享通道(PUSCH)传输相关,但不同的终端会有不同的RNTI)。

ue2。NULRB = 6;%资源块数ue2。N年代ubframe = 0;%子帧数ue2。NCellID = 10;%物理层单元标识ue2。RNTI = 77;%无线网络临时标识符ue2。CyclicPrefixUL =“正常”%循环前缀ue2。跳=“关闭”%跳频ue2。NTxAnts = 1;%发送天线数

PUCCH 1配置

对于第一个终端,采用了格式1的PUCCH,因此采用了合适的配置结构pucch1被创建。的参数CyclicShifts指定PUCCH格式1在传输PUCCH格式1和PUCCH格式2混合的资源块中使用的循环移位次数。的参数ResourceSize指定了PUCCH Format 2所使用的资源的大小,有效地确定了PUCCH Format 1传输的起始位置;这里我们指定ResourceIdx = 0它将使用第一个PUCCH Format 1资源。

pucch1。ResourceIdx = 0;% PUCCH资源索引pucch1。DeltaShift = 1;%△转变pucch1。CyclicShifts = 1;%循环移位次数pucch1。ResourceSize = 0;%分配给PUCCH格式2的资源大小

PUCCH 2配置

对于第二个终端,采用了格式2的PUCCH,因此采用了合适的配置结构pucch2被创建。参数值CyclicShiftsResourceSize与PUCCH Format 1配置相同。的价值ResourceIdx设置为第一个PUCCH Format 2资源,这意味着现在为PUCCH Format 1和PUCCH Format 2配置的物理资源块将是相同的。

pucch2。ResourceIdx = 0;% PUCCH资源索引pucch2。CyclicShifts = 1;%循环移位次数pucch2。ResourceSize = 0;%分配给PUCCH格式2的资源大小

信道传播模型配置

通过结构配置两个终端之间的传输通道通道.将信道的采样率配置为与第一个UE输出的采样率相匹配;请注意,第二个UE的输出使用相同的采样率,因为ue1。NULRBue2。NULRB都是一样的。当我们为每个终端使用此通道配置时,种子对每个UE设置不同的结构参数,从而产生不同的传播条件。

通道。NRxAnts = 4;%接收天线数通道。DelayProfile =“ETU”%延迟概要通道。DopplerFreq = 300.0;%多普勒频率通道。MIMOCorrelation =“低”% MIMO相关通道。InitTime = 0.0;%初始化时间通道。NTerms = 16;衰落模型中使用的振荡器通道。ModelType =“GMEDS”%瑞利衰落模型类型通道。InitPhase =“随机”%随机初始阶段通道。没有rmalizePathGains =“上”正规化延迟轮廓功率通道。没有rmalizeTxAnts =“上”传送天线规格化设定抽样率信息= lteSCFDMAInfo (ue1);通道。年代amplingRate = info.SamplingRate;

噪音的配置

信噪比为 年代 N R E 年代 / N 0 在哪里 E 年代 能量是感兴趣的信号吗 N 0 为噪声功率。可以确定要添加的噪声的功率,以便 E 年代 N 0 在SC-FDMA解调后进行归一化,以达到预期的信噪比SNRdB.在SC-FDMA解调之前增加的噪声将被IFFT放大。放大量是IFFT大小的平方根。在这个仿真中,通过将期望的噪声功率除以这个值来考虑这一点。另外,由于噪声的实部和虚部在合并成复加性高斯白噪声之前是分开产生的,噪声幅值必须按比例缩放 1 / 2 所以产生的噪声功率是1。

SNRdB = 21.0;规格化噪音功率信噪比= 10 ^ (SNRdB / 20);N = 1 /(信噪比*√(双(info.Nfft))) / sqrt (2.0);%配置随机数生成器rng (“默认”);

信道估计配置

信道估计器使用一种结构配置cec.这里立方插值将使用一个12 × 1 res的平均窗口。这配置信道估计器使用一种特殊的模式,以确保不同重叠PUCCH传输的传播和正交能力。

cec =结构;%信道估计配置结构cec。PilotAverage =“UserDefined”%引航平均的类型cec。FreqWindow = 12;REs的频率平均窗口(特殊模式)cec。TimeWindow = 1;REs(特殊模式)时间平均窗口%cec。InterpType =“立方”%三次插值

PUCCH格式1生成

现在,所有必要的配置都完成了,生成了PUCCH Format 1及其DRS。PUCCH Format 1携带HARQ指示灯hi1在这种情况下,有2个指示灯,意味着传输将是格式1b。PUCCH Format 1 DRS不携带数据。

% PUCCH 1调制/编码hi1 = [0;1);%创建HARQ指标disp (“hi1:”);
hi1:
disp (hi1。');
0 1
= ltePUCCH1(ue1, pucch1, hi1);% PUCCH 1 DRS创建= ltepucch1drssym (ue1, pucch1);

PUCCH格式2生成

PUCCH Format 2 DRS带有HARQ指标hi2在本例中有2个指示符,表示传输的格式为2b。PUCCH格式2本身携带编码的信道质量信息(CQI)。的信息cqi这里是编码,然后调制。

% PUCCH 2 DRS调制hi2 = [1;1);%创建HARQ指标disp (“hi2:”);
hi2:
disp (hi2。');
1 1
pch2drssym = ltePUCCH2DRS(ue2, pucch2, hi2); / / pch2drssym = ltePUCCH2DRS(ue2, pucch2, hi2);% PUCCH 2编码cqi = [0;1;1;0;0;1);%创建渠道质量信息disp (医院药学部”:“);
cqi:
医院药学部disp(。');
0 1 1 0 0 1
医院药学部codedcqi = lteUCIEncode ();% PUCCH 2调制pch2sym = ltePUCCH2(ue2, pucch2, codedcqi); / / pch2sym = ltePUCCH2(ue2, pucch2, codedcqi);

PUCCH指数代

建立了PUCCH和PUCCH DRS传输的索引

ltePUCCH1Indices = ltePUCCH1Indices(ue1, pucch1);pch2indices = ltePUCCH2Indices(ue2, pucch2);ltePUCCH1DRSIndices = ltePUCCH1DRSIndices(ue1, pucch1);pch2drsindices = ltePUCCH2DRSIndices(ue2, pucch2);

ue1传输

现在传送第一个UE的整体信号。步骤是将PUCCH Format 1和相应的DRS信号映射到一个空资源网格中,执行SC-FDMA调制,然后通过衰落传播信道进行传输。

创建资源网格grid1 = lteULResourceGrid (ue1);grid1 (pucch1Indices) = pucch1Sym;grid1 (pucch1DRSIndices) = pucch1DRSSym;% SC-FDMA调制txwave1 = lteSCFDMAModulate(ue1, grid1);%信道建模。另外25个样品添加到最后%波形,以覆盖从信道建模预期的延迟范围%(实现延迟和信道延迟扩展的组合)通道。种子=13; rxwave1 = lteFadingChannel(channel,[txwave1; zeros(25,1)]);

ue2传输

第二个UE的整体信号现在传输。注意一个不同的随机种子通道。种子与第一个UE使用的相比。这确保两个传输使用不同的传播。

创建资源网格grid2 = lteULResourceGrid (ue2);grid2 (pucch2Indices) = pucch2Sym;grid2 (pucch2DRSIndices) = pucch2DRSSym;% SC-FDMA调制txwave2 = lteSCFDMAModulate(ue2, grid2);%信道建模。另外25个样品添加到最后%波形,以覆盖从信道建模预期的延迟范围%(实现延迟和信道延迟扩展的组合)通道。种子=15; rxwave2 = lteFadingChannel(channel, [txwave2; zeros(25, 1)]);

在基站接收信号

对基站接收机的输入进行建模,将两个褪色信号与高斯噪声和功率相加,如上文所述。

Rxwave = rxwave1 + rxwave2;%添加噪声噪声= N*complex(randn(size(rxwave)), randn(size(rxwave))));Rxwave = Rxwave +噪声;

ue1的同步和SC-FDMA解调

UE1的上行帧定时估计使用pucch1 DRS信号计算,然后用来解调SC-FDMA信号。生成的网格rxgrid1是一个三维矩阵。行数表示子载波的数量。列数等于子帧中的SC-FDMA符号数。对于返回的网格,子载波和符号的数量是相同的lteSLSCFDMADemodulate当网格进入lteSLSCFDMAInfo.网格中第三维平面的数量与接收天线的数量相对应。

%的同步offset1 = lteULFrameOffsetPUCCH1(ue1, pucch1, rxwave);% SC-FDMA解调rxwave(1+offset1:end,:); / / rxwave(1+offset1:end,:)

ue1信道估计与均衡

估计每个发射机和基站接收机之间的信道,并用于均衡其影响。创建信道的估计lteULChannelEstimatePUCCH1使用。信道估计功能由该结构配置cec.该函数返回一个由传输网格中的信道应用于每个资源元素的复杂权重的三维矩阵。第1维是副载波,第2维是SC-FDMA符号,第3维是接收天线。信道对接收的资源网格的影响被均衡使用lteEqualizeMMSE.该函数使用信道的估计值(H1)来均衡接收的资源网格(rxGrid1).

%信道估计[H1, n0] = lteULChannelEstimatePUCCH1(ue1, pucch1, cec, rxgrid1);从所有给定的子帧中提取对应于PUCCH的REs%接收天线和信道估计[pucchrx1, pucchH1] = lteExtractResources(pucch1Indices, rxgrid1, H1);%均衡eqgrid1 = lteULResourceGrid (ue1);eqgrid1(pucch1Indices) = lteEqualizeMMSE(pucchrx1, pucchH1, n0);

PUCCH 1解码

最后对PUCCH Format 1信道进行解码,提取有用的HARQ指示位。

rxhi1 = ltePUCCH1Decode(ue1, pucch1, length(hi1)),...eqgrid1 (pucch1Indices));disp (“rxhi1:”);
rxhi1:
disp (rxhi1。');
0 1

ue2接收机

利用pucch2 DRS信号计算UE2的上行帧定时估计,然后用来解调SC-FDMA信号。在这种情况下,混合ARQ指标作为PUCCH Format 2 DRS也被发现。生成的网格rxgrid2是一个三维矩阵。创建信道的估计lteULChannelEstimatePUCCH2使用。信道对接收资源网格的影响使用lteEqualizeMMSE进行均衡。最后对PUCCH Format 2信道进行解码,提取有用的CQI信息位。

%同步(和pucch2 DRS解调/解码)[offset2, rxhi2] = lteULFrameOffsetPUCCH2 (ue2、pucch2 rxwave,长度(hi2));disp (“rxhi2:”);
rxhi2:
disp (rxhi2。');
1 1
% SC-FDMA解调rxwave(1+offset2:end,:); / / rxwave(1+offset2:end,:)%信道估计[H2, n0] = lteULChannelEstimatePUCCH2(ue2, pucch2, cec, rxgrid2, rxhi2); / /输出从所有给定的子帧中提取对应于PUCCH的REs%接收天线和信道估计[pucchrx2, pucchH2] = lteExtractResources(pucch2Indices, rxgrid2, H2);%均衡eqgrid2 = lteULResourceGrid (ue2);eqgrid2(pucch2Indices) = lteEqualizeMMSE(pucchrx2, pucchH2, n0); / /输出% pucch2解调rxcodedcqi = ltePUCCH2Decode(ue2, pucch2, eqgrid2(pucch2Indices)); / / rxcodedcqi = ltePUCCH2Decode(ue2, pucch2, eqgrid2(pucch2Indices));% PUCCH 2解码rxcqi = lteUCIDecode(rxcodedcqi, length(cqi));disp (“rxcqi:”);
rxcqi:
disp (rxcqi。');
0 1 1 0 0 1

显示估计通道

生成的图表明,尽管两个不同信号共享相同的物理re,但它们的信道可以被独立估计。红色表示PUCCH Format 1信道估计,蓝色表示PUCCH Format 2信道估计。

hPUCCHMixedFormatDisplay(H1, eqgrid1, H2, eqgrid2);

图中包含一个坐标轴。标题为不同通道的通道估计大小的轴包含2个类型为表面的对象。这些对象表示PUCCH 1, PUCCH 2。

附录

这个例子使用了这个helper函数。