gold_seq.m

来自「在通信系统仿真当中,常常会使用到伪随机信号,该源代码文件中包含两类最为常用的伪随」· M 代码 · 共 28 行

M
28
字号
function [gold1,gold2]=gold_seq(connections1,connections2,registers1,registers2)    %connections1,connections2为产生两个m序列的为特征多项式向量
      %registers1,registers2为两个为初始值向量
sequence1=mlsrs(connections1,registers1);%调用生成m序列的函数
sequence2=mlsrs(connections2,registers2);
L=2^length(connections1,registers2);
%将第二个序列移位与第一个序列模2相加
for shift_amount=0:L-1
    temp=[sequence2(shift_amount+1:L) sequence2(1:shift_amount)];
    gold_seq(shift_amount+1,:)=(sequence1+temp)-floor((sequence+temp)./2).*2;
end
max_cross_con=0; %查找这个序列中互相关的最大值
for 1=1:L-1
for j=i+1:L
%平衡各序列
        c1=2*gold_seq(i,:)-1;
        c2=2*gold_seq(j,:)-1;
        for m=0:L-1
            shifted_c2=[c2(m+1:L) c2(1:m)];
            corr=abs(sum(c1.*shift_c2));
            if(corr>max_cross_corr)
                max_cross_corr=corr;
            end
        end
    end
end
gold_seq1=gold_seq(1,:);
gold_seq2=gold_seq(2,:);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?