⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m_sequence.txt

📁 matlab生成m序列的函数 原来那个效率太低
💻 TXT
字号:
matlab生成m序列的函数
原来那个效率太低,主要是因为实际应用并不需要生成太长的m序列,加入了需求长度,能有效减少运行时间。25级的移位寄存器,运行了一个小时都没有出来一周期,我仅仅需要三千bit而已。改进版:
 
function [seq]=mseq(connections,registers,len);
%***************************************************
% 此函数用来生成最大长度线性移位寄存器序列
% connections为特征多项式向量,registers为初始值向量
% len为所需序列长度,若为0则输出一个周期
%***************************************************
m=length(connections);
L=2^m-1;     %周期长度
if len==0
    len=L;
end
fan=0;
for i=1:len
    seq(i)=registers(m);
    for j=1:m
        fan=fan +connections(j)*registers(j);
        fan=(mod(fan,2));
    end
    for t=m:-1:2  %寄存器移位
        registers(t)=registers(t-1);
    end
    registers(1)=fan;
    fan=0;
end

⌨️ 快捷键说明

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