本示例演示如何使用该方法为基带组件载波配置和生成5G NR下行矢量波形nrWaveformGenerator
函数。
这个示例演示了如何参数化并生成5G新无线电(NR)下行波形nrWaveformGenerator
函数。生成的波形包含这些通道和信号。
PDSCH及其相关DM-RS和PT-RS
PDCCH及其相关DM-RS
PBCH及其相关DM-RS
PSS和SSS
CSI-RS
这个例子演示了如何参数化和生成基带分量载波波形,其特征是多个子载波间隔(SCS)载波和带宽部分(BWP)。您可以在不同的bwp上生成物理下行共享通道(PDSCH)、物理下行控制通道(PDCCH)和通道状态信息参考信号(CSI-RS)的多个实例。您可以配置控制资源集集(CORESETs)和搜索空间监视机会来映射PDCCHs。这个例子没有对物理信道和信号应用预编码。
使用nrDLCarrierConfig
对象以参数化基带波形产生。该对象包含一组与波形通道和信号相关的附加对象,使您能够设置这些下行载波配置参数。
此DL载波配置的标签
SCS以资源块为单位的载波带宽
载体细胞ID
子帧中生成波形的长度
窗口
ofdm调制波形的采样率
符号相位补偿的载波频率
您可以控制SCS载波带宽和保护带使用NStartGrid
和NSizeGrid
的财产nrSCSCarrierConfig
对象。
waveconfig = nrDLCarrierConfig;%创建下行运营商配置对象waveconfig。标签=“DL载体1”;%此下行波形配置的标签waveconfig.ncellid = 0;%细胞身份waveconfig。ChannelBandwidth = 40;%信道带宽(MHz)waveconfig。FrequencyRange =“FR1”;% 'FR1'或'FR2'waveconfig。NumSubframes = 10;%生成的波形中1ms子帧的数量(每1ms子帧1、2、4、8个插槽,取决于SCS)waveconfig。窗口Percent = 0;相对于FFT长度的窗口百分比waveconfig。SampleRate = [];% OFDM调制波形的采样率waveconfig。CarrierFrequency = 0;%载波频率,单位为Hz。此属性用于符号阶段% OFDM调制前的补偿%使用最大尺寸定义一组SCS特定载波% 40 MHz NR信道。参见TS 38.101-1了解更多关于定义的信息%带宽和保护带需求scscarriers = {nrSCSCarrierConfig, nrSCSCarrierConfig};scscarriers{1}。SubcarrierSpacing = 15;scscarriers{1}。NSizeGrid= 216; scscarriers{1}.NStartGrid = 0; scscarriers{2}.SubcarrierSpacing = 30; scscarriers{2}.NSizeGrid = 106; scscarriers{2}.NStartGrid = 1;
在本节中,您可以设置SS (signal synchronization)猝发的参数。SS爆发的数字学可能与波形的其他部分不同。这是通过块模式参数指定的,如TS 38.213节4.1所述。位图指定在5ms半帧突发中要传输的块。您还可以设置以毫秒为单位的周期和爆发的功率。有关可配置SS burst属性的完整列表,请参见nrwavenenssburstconfig
.
%SS突发配置ssburst = nrWavegenSSBurstConfig;ssburst。使= 1;%启用SS突发ssburst。权力= 0;%以dB为单位的功率缩放ssburst。BlockPattern =“案例B”;% Case B (30kHz)子载波间距ssburst。TransmittedBlocks = [1 1 1];%位图指示在5ms半帧突发中传输的块ssburst.period = 20;% SS突发设置周期毫秒(5,10,20,40,80,160)ssburst。NCRBSSB = [];% SS突发(CRB)频率偏移量,用[]为波形中心
BWP由在给定的SCS载体上共享命数的一组连续资源组成。可以使用单元格数组定义多个bwp。单元格数组中的每个元素nrWavegenBWPConfig
对象定义BWP。对于每个BWP,可以指定SCS、循环前缀(CP)长度和带宽。这SubcarrierSpacing
属性将BWP链接到前面定义的某个SCS特定载波。这NStartBWP
属性控制BWP相对于A点在载体中的位置。NStartBWP
根据BWP命理学,以公共资源块(CRB)表示。不同的bwp可以相互重叠。
% BWP配置bwp = {nrWavegenBWPConfig, nrWavegenBWPConfig};bwp{1}。BandwidthPartID = 1;% BWP IDbwp{1}。标签='BWP 1 @ 15 khz';此BWP的%标签BWP {1} .subcarrierspacing = 15;% BWP子载波间距BWP {1} .CYCLICPREFIX ='普通的';% BWP循环前缀15千赫bwp{1}。NSizeBWP = 25;prb中BWP的大小%bwp{1}。NStartBWP = 12;在crb中BWP相对于A点的位置bwp{2}。BandwidthPartID = 2;% BWP IDbwp{2}。标签=“BWP 2 @ 30khz”;此BWP的%标签BWP {2} .subcarrierspacing = 30;% BWP子载波间距bwp{2}。CyclicPrefix ='普通的';30 kHz的%BWP循环前缀bwp{2}。NSizeBWP = 50;prb中BWP的大小%bwp{2}。NStartBWP = 51;在crb中BWP相对于A点的位置
指定CORESET和PDCCH搜索空间配置。CORESET和搜索空间为给定的命理学指定了控制信道传输的可能位置(在时间和频率上)。单元格数组中的每个元素nrCORESETConfig
对象在单元格数组中定义了Coreset和每个元素nrSearchSpaceConfig
对象定义了搜索空间。
为每个CORESET和搜索空间设置这些参数。
指定槽中每个CORESET监视机会的第一个符号的OFDM符号。
块在一个周期内已分配槽位的持续时间。
分配模式的周期性。
CORESET持续时间用符号表示,可以是1、2或3。
定义Coreset的分配物理资源块(PRB)的位图。Corese频率分配在6个PRB的块中定义,在CRB编号中对齐,相对于点A对齐。位图中的每个位选择包含它的CRB对齐块中的所有6个PRB。
CCE-to-REG映射,可“交错”或“非交错”。
基于CORESET持续时间的资源元素组(REG) bundle大小(L),可以是(2,6)或(3,6)。
交织器大小,或2,或3,或6。
移位索引,范围为0…274的标量值。
下图显示了一些CORESET参数的含义。
%coreset和搜索空间配置coresets = {nrCORESETConfig};coresets{1}。CORESETID = 1;% CORESET IDcoresets{1}。时间= 3;% CORESET符号持续时间(1,2,3)coresets{1}。FrequencyResources = [1 1 0 1];%位图,表示CORESET的6个PRB块(RRC - frequencyDomainResources)coresets{1}。CCEREGMapping =“noninterleaved”;%映射:“交错”或“非交织物”coresets {1} .regbundlesize = 3;% L(2,6)或(3,6)coresets{1}。InterleaverSize = 2;% R(2、3、6)coresets{1}。ShiftIndex = waveconfig.NCellID;%设置为“NCellID”searchspaces = {nrSearchSpaceConfig};searchspaces{1}。SearchSpaceID = 1;%搜索空间IDsearchspaces{1}。CORESETID = 1;与此搜索空间关联的% CORESETsearchspaces{1}。SearchSpaceType =“问题”;%搜索空间类型“ue”或“common”searchspaces{1}。SlotPeriodAndOffset = [5 0];%搜索空间模式分配的槽期和槽偏移量searchspaces{1}。时间= 2;%模式周期内槽位块中的槽位数searchspaces{1}。StartSymbolWithinSlot = 0;%插槽中每个CORESET监视机会的第一个符号searchspaces{1}。NumCandidates = [8 8 4 2 0];%每个AL的候选人数(如果AL不适合CORESET,则设置为0)
使用单元阵列在波形中指定一组PDCCH传输实例。单元格数组中的每个元素nrWavegenPDCCHConfig
对象定义了一个PDCCH实例序列。
为每个PDCCH序列设置这些参数。
启用或禁用这个PDCCH序列。
为这个PDCCH序列指定一个标签。
指定携带PDCCH的BWP。PDCCH使用为此BWP指定的SCS。
功率按dB缩放。
启用或禁用下行链路控制信息(DCI)信道编码。
分配Coreset监控场合序列中的搜索空间。
携带PDCCH实例的搜索空间(和CORESET)。
插槽中的分配时期。空时期表示没有重复插槽模式。
PDCCH的聚合级别(AL)(控制通道元素(cce)的数量)。
分配的候选人指定用于传输PDCCH的CCE。
RNTI。
对这个PDCCH及其相关DM-RS的NID进行置乱。
DM-RS功率放大分贝。
DCI消息有效负载大小。
DCI消息数据源。您可以使用一系列比特或其中一个标准PN序列:'pn9-ITU'
那'pn9'
那'pn11'
那“PN15”
那'pn23'
.您可以将生成器的种子指定为表单中的单元格数组{PN9,种子}
.如果不指定种子,则用所有种子初始化生成器。
pdcch = {nrWavegenPDCCHConfig};pdcch{1}。Enable = 1;%使能PDCCH序列pdcch{1}。标签=' ue1 - PDCCH @ 15khz ';%此PDCCH序列的标签pdcch{1}。BandwidthPartID = 1;% PDCCH传输带宽部分pdcch {1} .power = 1.1;%以dB为单位的功率缩放pdcch {1} .coding = 1;%启用DCI编码pdcch {1} .searchspaceid = 1;%的搜索空间pdcch{1}。SlotAllocation = 0;%为PDCCH序列分配的槽索引pdcch{1}。时间= 5;%槽位分配周期pdcch{1}。AggregationLevel = 8;%聚合级别(1、2、4、8、16个cce)pdcch{1}。所有ocatedCandidate = 1;% PDCCH候选搜索空间(基于1)pdcch {1} .rnti = 11;% RNTIpdcch{1}。DMRSScramblingID = 1;%PDCCH和DM-RS加扰NIDpdcch{1}。DMRSPower = 0;额外的DM-RS功率提升,分贝pdcch{1}。DataBlockSize = 20;DCI有效载荷大小pdcch{1}。数据源='pn9';%DCI数据源
使用单元阵列在波形中指定一组PDSCH传输实例。单元格数组中的每个元素nrWavegenPDSCHConfig
对象定义了一个PDSCH实例序列。这个例子定义了两个PDSCH序列,用于模拟两个用户设备(UE)传输。
一般参数
为每个PDSCH序列设置这些参数。
启用或禁用此PDSCH序列。
为这个PDSCH序列指定一个标签。
指定携带PDSCH的BWP。PDSCH使用为此BWP指定的SCS。
功率按dB缩放。
启用或禁用DL-SCH传输信道编码。
传输块数据源。您可以使用一系列比特或其中一个标准PN序列:'pn9-ITU'
那'pn9'
那'pn11'
那“PN15”
那'pn23'
.您可以将生成器的种子指定为表单中的单元格数组{PN9,种子}
.如果不指定种子,则用所有种子初始化生成器。
用于计算传输块大小的目标码率。
开销参数。
灯象征。
层数。
冗余版本(RV)序列。
启用或禁用虚拟物理资源块映射的交织。
交错图的束大小,由更高的层参数vrb-ToPRB-Interleaver指定。
pdsch = {nrWavegenPDSCHConfig};%为第一个UE创建PDSCH配置对象pdsch{1}。使= 1;%开启PDSCH序列pdsch{1}。标签=' ue1 - PDSCH @ 15khz ';%此PDSCH序列的标签pdsch{1}。BandwidthPartID = 1;PDSCH传输的%带宽部分PDSCH {1} .Power = 0;%以dB为单位的功率缩放pdsch{1}。编码= 1;%启用DL-SCH传输信道编码pdsch{1}。数据源='pn9';%通道数据源PDSCH {1} .targetCoderate = 0.4785;%用于计算传输块大小的码率pdsch {1} .xoverhead = 0;百分比匹配开销pdsch{1}。调制=“正交相移编码”;% ' qpsk ', ' 16qam ', ' 64qam ', ' 256qam 'pdsch{1}。NumLayers = 2;% PDSCH层数pdsch{1}。RVSequence = [0 2 3 1];% RV序列将在PDSCH分配序列中循环应用pdsch{1}。VRBToPRBInterleaving = 0;%禁用交错资源映射pdsch{1}。VRBBundleSize = 2;% vrb-ToPRB-Interleaver参数
分配
该图显示了PDSCH分配的参数。
通过设置这些参数,可以控制PDSCH的分配。这些参数是相对于BWP的。指定的PDSCH分配将避免用于SS突发的位置。
符号分配给每个PDSCH实例的插槽中。
用于PDSCH序列的帧中的槽。
插槽中的分配时期。空时期表示没有重复插槽模式。
相对于BWP分配的prb。
RNTI。此值用于将PDSCH链接到PDCCH的一个实例。
扰乱PDSCH位的NID。
pdsch {1} .symbolallocation = [2 9];%首先符号和长度pdsch{1}。SlotAllocation = 0:9;%为PDSCH序列分配的槽位索引pdsch {1} .period = 15;%槽位分配周期PDSCH {1} .prset = [0:5,10:20];%复审委员会分配pdsch{1}。RNTI = 11;% RNTI为第一个UEpdsch{1}。NID = 1;%数据部分置乱
如果需要,可以指定速率匹配的速率,以匹配速率
PDSCH可以围绕一个或多个coreset进行速率匹配。
PDSCH可以与其他资源分配进行速率匹配。
pdsch{1}。ReservedCORESET = 1;%速率匹配模式,由CORESET id定义pdsch {1} .ReservedPRB{1}。PRBSet = [];%速率匹配模式,由PRB定义(RRC 'bitmaps')pdsch {1} .ReservedPRB{1}。SymbolSet = [];pdsch {1} .ReservedPRB{1}。时间= [];
PDSCH DM-RS配置
配置DM-RS参数。
%天线接口和DM-RS配置(TS 38.211章节7.4.1.1)pdsch{1}。MappingType =“一个”;% PDSCH映射类型('A'(slot-wise),'B'(non - slot-wise))pdsch{1}。DMRSPower = 0;额外功率提升百分比,单位为dBpdsch {1} .DMRS。DMRSConfigurationType = 2;% DM-RS配置类型(1,2)pdsch {1} .DMRS。NumCDMGroupsWithoutData = 1;百分比没有数据的DM-RS CDM组。该值可以是集合{1,2,3}之一pdsch {1} .dmrs.dmrsportset = [];% DM-RS天线端口使用([]给出端口号0:NumLayers-1)pdsch {1} .DMRS。DMRSTypeAPosition = 2;%仅映射类型A。第一个DM-RS符号位置(2,3)pdsch {1} .DMRS。DMRSLength = 1;%前置DM-RS符号数(1个(单符号),2个(双符号))pdsch {1} .DMRS。DMRSAdditionalPosition = 0;%额外的DM-RS符号位置(最大范围0 ... 3)pdsch {1} .DMRS。NIDNSCID = 1;%加扰标识(0 ... 65535)pdsch {1} .DMRS。NSCID = 0;%加扰初始化(0,1)
PDSCH PT-RS配置
配置PT-RS参数。
PT-RS配置(TS 38.211章节7.4.1.2)pdsch{1}。EnablePTRS = 0;%启用或禁用PT-RS(1或0)pdsch{1}。PTRSPower = 0;额外PT-RS功率提升,分贝pdsch {1} .ptrs.timeditys = 1;PT-RS(1,2,4)的时间密度(L_PT-RS) %pdsch {1} .PTRS。FrequencyDensity = 2;PT-RS(2,4)频率密度(K_PT-RS) %pdsch {1} .PTRS。REOffset ='00';% PT-RS资源元素偏移量('00','01','10','11')pdsch {1} .PTRS。PTRSPortSet = 0;% PT-RS天线接口必须是DM-RS接口的子集
当PT-RS使能时,DM-RS配置类型1的DM-RS端口范围为0 ~ 3,DM-RS配置类型2的DM-RS端口范围为0 ~ 5。PT-RS的天线端口名义上是最小的DM-RS端口。
指定多个PDSCH实例
为第二个BWP指定第二个PDSCH序列。
pdsch {2} = pdsch {1};%为第二个UE创建PDSCH配置对象pdsch{2}。使= 1;pdsch{2}。标签='UE 2 - PDSCH @ 30 kHz';pdsch{2}。BandwidthPartID = 2;% PDSCH映射到第二个BWPpdsch{2}。RNTI = 12;% RNTI用于第二个UEpdsch {2} .symbolallocation = [0 12];pdsch {2} .slotallocation = [2:4,6:20];pdsch {2} .prset = [25:30,35:38];PRB分配百分比,相对于BWP
本节介绍了波形中scsi - rs的配置。单元格数组中的每个元素nrWavegenCSIRSConfig
对象定义了一组与BWP关联的CSI-RS资源。定义两个禁用的CSI-RS资源集。
一般参数
为一组CSI-RS资源设置这些参数。
启用或禁用此CSI-RS资源集。
为这组CSI-RS资源指定一个标签。
指定携带这组CSI-RS资源的BWP。scsi - rs资源配置使用为这个BWP指定的SCS。
指定以dB为单位的功率缩放。提供标量定义单个scsi - rs资源或所有配置的scsi - rs资源的功率扩展。提供向量为每个CSI-RS资源定义一个单独的功率级别。
csir = {nrWavegenCSIRSConfig};csir{1}。使= 0;csir{1}。标签=“CSI-RS @ 15khz”;csir{1}。BandwidthPartID = 1;csir{1}。权力= 3;%以dB为单位的功率缩放
CSI-RS配置
您可以为一个或多个零功率(ZP)或非零功率(NZP) CSI-RS资源配置配置这些参数。
CSI-RS资源的类型('nzp','zp')。
行号对应TS 38.211表7.4.1.5.3-1(1…18)中定义的CSI-RS资源。
CSI-RS资源的频率密度。它可以“一个”
那“三”
那'dot5even'
,或“dot5odd”
.
资源块(RB)内的CSI-RS资源的子载波位置
分配给CSI-RS资源的RBs数量(1…275)。
启动CSI-RS资源的RB索引相对于载波资源网格(0 ... 274)。
插槽中CSI-RS资源的OFDM符号位置。
CSI-RS资源的时隙(0基)的周期和偏移。该参数可以是向量或电池阵列的矢量。在后一种情况下,每个单元对应于单个CSI-RS资源。在向量的情况下,相同的插槽用于所有CSI-RS资源。
置乱标识对应于用于生成伪随机序列的CSI-RS资源(0…1023)。
csir{1}。CSIRSType = {“nzp”那“zp”};csir{1}。RowNumber = [3 5];csir{1}。密度= {“一个”那“一个”};csir{1}。SubcarrierLocations = {6 4};csir{1}。NumRB = 25;csir{1}。RBOffset = 12;csir{1}。SymbolLocations = {13 9};csir{1}。CSIRSPeriod = {[5 0], [5 0]}; csirs{1}.NID = 5;
指定多个CSI-RS实例
为第二个BWP指定第二组CSI-RS资源。
csir {2} = nrWavegenCSIRSConfig;csir{2}。使= 0;csir{2}。标签='CSI-RS @ 30 kHz';CSIRS {2} .BANDWidthpartid = 2;CSIRS {2} .Power = 3;%以dB为单位的功率缩放csir{2}。CSIRSType = {“nzp”那“nzp”};csir{2}。RowNumber = [1 1];csir{2}。密度= {“三”那“三”};csir{2}。SubcarrierLocations = {0 0};csir{2}。NumRB = 50;csir{2}。RBOffset = 50;csir{2}。SymbolLocations = {6 10};csir{2}。CSIRSPeriod = {[10 1], [10 1]}; csirs{2}.NID = 0;
将所有通道和信号参数分配到主载波配置对象中nrDLCarrierConfig
然后生成并绘制波形。
waveconfig.ssburst = ssburst;waveconfig.scscarriers = scscarriers;waveconfig.bandwidthparts = bwp;waveconfig.coreet = coresets;waveconfig.searchspaces = searchspaces;waveconfig.pdcch = pdcch;waveconfig.pdsch = pdsch;waveconfig.csirs = csirs;%产生复基带波形(波形信息]= nrWaveformGenerator (waveconfig);
绘制天线端口组基带波形的幅值。
图;情节(abs(波形));标题('5G下行链路基带波形的幅度');Xlabel(“样本指数”);ylabel ('震级');
绘制第一个天线端口的波形谱图。
samplerate = info.ResourceGrids (1) .Info.SampleRate;nfft = info.ResourceGrids (1) .Info.Nfft;图;光谱图(波形(:1)的(nfft, 1), 0, nfft,“中心”,采样率,“桠溪”那“MinThreshold”, -130);标题(“5G下行基带波形谱图”);
波形发生器函数返回时域波形和结构信息
.这信息
结构包含底层资源元素网格和所有PDSCH和PDCCH实例在波形中使用的资源细分。
这ResourceGrids
Field是一个结构数组,它包含这些字段。
对应于每个BWP的资源网格。
包含每个BWP中的信道和信号的总带宽的资源网格。
一种信息结构,其信息与每个BWP相对应。例如,显示第一个BWP的信息。
disp (与BWP 1相关的调制信息:) disp (info.ResourceGrids info) (1)
与BWP 1相关的调制信息:Nfft: 4096 SampleRate: 61440000 cyclicprefixlength:[320 288 288 288 288 288 288 320 288 288 288…]symbollength:[4416 4384 4384 4384 4384 4384 4384 4416 4384…]SymbolPhases: [0 0 0 0 0 0 0 0 0 0 0] SymbolsPerSlot: 14 SlotsPerSubframe: 1 SlotsPerFrame: 10 k0: 0
生成的资源网格是3-D矩阵。网格中的不同平面表示增加端口号顺序的天线端口。
nrWavegenBWPConfig
|nrSCSCarrierConfig
|nrULCarrierConfig
|nrWavegenPDSCHConfig
|nrwavenenssburstconfig
|nrSearchSpaceConfig
|nrWavegenPDCCHConfig
|nrCORESETConfig
|nrWavegenCSIRSConfig