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

📄 lfsr.m

📁 线性反馈移位寄存器的matlab实现
💻 M
字号:
function [ lfsrBit ] = lfsr( lfsrLength, tap1, tap2, tap3, SEQLEN )%by TNT@maxscend (2009/02)if(lfsrLength>200 || tap1>tap2 || tap2>tap3 || tap3>= lfsrLength)     %exitendfor i = 1:lfsrLength    lfsrReg(i)=1;endfor clk=1:SEQLEN    lfsrRegTemp(1) = lfsrReg(tap1);    lfsrRegTemp(2) = lfsrReg(tap2);    if(tap2 == tap1)         lfsrRegTemp(2) = 0;     end    lfsrRegTemp(3) = lfsrReg(tap3);    if(tap3 == tap2)         lfsrRegTemp(3) = 0;     end    lfsrRegTemp(4) = lfsrReg(lfsrLength);    lfsrReg0 = xor(xor(lfsrRegTemp(1),lfsrRegTemp(2)),xor(lfsrRegTemp(3),lfsrRegTemp(4)));        for i=lfsrLength:-1:2        lfsrReg(i)=lfsrReg(i-1);    end    lfsrReg(1)=lfsrReg0;    lfsrBit(clk)=lfsrReg(lfsrLength);    if(lfsrBit(clk)==0)        lfsrBit(clk)=-1;    end    %     %print%     lfsrRegNum = 0;%     for i=1:lfsrLength%         lfsrRegNum = lfsrRegNum+lfsrReg(i)*2^(i-1);%     end%     fprintf('%d:  %d\n',clk,lfsrRegNum);end

⌨️ 快捷键说明

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