如何查公司的工商注冊(cè)信息網(wǎng)站推廣與優(yōu)化方案
802.11a和802.11n中的scrambler仿真不可以直接用matlab中的comm.Scrambler函數(shù)。因?yàn)檫@個(gè)函數(shù)實(shí)現(xiàn)的是multiplicative scrambling,而802.11a和802.11n中的scrambler使用的是additive scrambling。additive scrambling使用異或操作進(jìn)行擾碼,multiplicative scrambling使用乘法而非異或操作來(lái)對(duì)數(shù)據(jù)進(jìn)行擾碼。
所以進(jìn)行仿真的時(shí)候,要使用comm.PNSequence生成一個(gè)PN序列,然后對(duì)輸入數(shù)據(jù)進(jìn)行XOR操作即可。
代碼如下:
%% scramble
genPoly = 'x^7 + x^3 + 1'; % Generator polynomial
shift = 7; % Shift value for output
spf = 48; % Samples per frame
initState = [1 0 1 1 1 0 1]';
pnSeq = comm.PNSequence( ...Polynomial=genPoly, ...InitialConditionsSource="Input Port", ...Mask=shift, ...SamplesPerFrame=spf, ...OutputDataType="logical");
pnsequence = pnSeq(initState);
scrData = xor(data_Payload_bit,pnsequence);