主要内容

产生VHT多用户波形

这个例子显示了如何从各个组件的VHT多用户的波形。它还展示了如何通过使用产生相同的波形wlanWaveformGenerator功能。

创建一个VHT配置对象,指定三个用户和三个发射天线。

VHT = wlanVHTConfig('NUMUSERS'3,“NumTransmitAntennas”,3);

时空设置的数字流的载体[1 1 1],这表明每个用户分配一个空时流。设置用户位置[0 1 2]。设置组ID为5组ID值从1到62申请多用户操作。

vht.NumSpaceTimeStreams = [1 1 1];vht.UserPositions = [0 1 2];vht.GroupID = 5;

为每个用户设置不同的MCS值。

vht.MCS = [0 2 4];

在APEP长度设置为2000,1400,和1800字节。每个元素对应于分配给每个用户的字节数。

vht.APEPLength = [2000 1400 1800]
VHT = wlanVHTConfig与属性:ChannelBandwidth: 'CBW80' NUMUSERS位:3个UserPositions:[0 1 2] NumTransmitAntennas:3个NumSpaceTimeStreams:[1 1 1] SpatialMapping: '直接' MCS:[0 2 4] ChannelCoding: 'BCC' APEPLength:[2000 1400 1800] GuardInterval: '长' 的GroupID:5只读属性:PSDULength:[2000 6008 12019]

显示了三个用户的PSDU长度。该PSDU长度是APEP长度和MCS值两者的函数。

vht.PSDULength
ans =.1×32000 6008 12019

显示VHT波形的场指数。

IND = wlanFieldIndices(VHT)
印第安纳州=结构与字段:LSTF: [1 640] LLTF: [641 1280] LSIG: [1281 1600] VHTSIGA: [1601 2240] VHTSTF: [2241 2560] VHTLTF: [2561 3840] VHTSIGB: [3841 4160] VHTData: [4161 48000]

创建一个包含VHT波形的各个领域。

L-STF = wlanLSTF(VHT);L-LTF = wlanLLTF(VHT);L-SIG = wlanLSIG(VHT);[VHTSIG-A,sigAbits] = wlanVHTSIGA(VHT);-STF = wlanVHTSTF(VHT);VHT-LTF = wlanVHTLTF(VHT);[VHT-SIGB,sigBbits] = wlanVHTSIGB(VHT);

提取前两个VHT-SIG-A的信息比特并将它们转换为十进制等效。

bw = bi2de(双(sigAbits (1:2) '))
BW = 2

值,2,对应80mhz带宽(参见wlanVHTSIGA)。

提取VHT-SIG-A信息位5到10,并将其转换为等价的十进制数。

GROUPID = bi2de(双(sigAbits(5:10)'))
GROUPID = 5

所提取的组ID,如图5所示,在VHT配置对象相应的属性相匹配。

提取从VHT-SIG-B的信息比特的数据包长度。对于具有80MHz的带宽的多用户操作时,第一19位包含APEP长度信息。转换字段长度以十进制等价物。它们乘以由4,因为VHT-SIG-B域的长度在4个字节为单位来表示。

PKTLEN = bi2de(双(sigBbits(1:19,:)'))* 4
pktLen =3×12000 1400 1800

确认所提取的APEP长度在配置对象的值集相匹配。

ISEQUAL(PKTLEN”,vht.APEPLength)
ans =.合乎逻辑1

从VHT-SIG-B信息位中提取MCS值。MCS组件由20到23位指定。

MCS = bi2de(双(sigBbits(20:23,:)'))
MCS =3×10 2 4

的值对应于那些在VHT配置对象设置。

创建三个数据序列,一个为每个用户。

d1 = randi([0 1],vht.PSDULength(1)*8,1);d2 = randi([0 1],vht.PSDULength(2)*8,1);d3 = randi([0 1],vht.PSDULength(3)*8,1);

生成使用这些数据序列的VHT数据字段。

vhtdata = wlanVHTData({D1 D2 D3},VHT);

产生与被禁止开窗多用户VHT波形。从波形中提取数据字段。

WV = wlanWaveformGenerator({D1 D2 D3},VHT,'WindowTransitionTime', 0);wvdata = wv (ind.VHTData (1): ind.VHTData (2):);

确认两个生成方法产生相同的结果。

ISEQUAL(vhtdata,wvdata)
ans =.合乎逻辑1

画出波形的幅值,使其形象化。

T =((1:长度(WV))' -  1)/ 80e6;情节(吨,ABS(WV))xlabel(“时间(s)”) ylabel ('震级'

图包含轴对象。轴对象包含类型线的3个对象。