任意阶平衡gold码的产生及其互相关性(代码).docx

任意阶平衡gold码的产生及其互相关性(代码).docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
clear all; n=input(请输入移位寄存器的级数 n,n是大于等于2的整数,且n不能为4的倍数,为4的 倍数不保证结果正确:);%五级移位% N=2An-1;% 周期为 N% x=gfprimfd(n,all);% 产生级数为 n的本原多项式 % [row,colu mn]=size(x); if(n==2)%n为2是不能用下面求y的公式,作为特例直接写入 % y=[1,1]; end if(n 2) y=x(1:row,2:column);%本来是nXn矩阵,第一列都是 1,不要了,现在是 nX(n-1)矩阵% end m=zeros(row,N);%求出所有 m序列% for r=1:row% 从 1 到第 row 行 % register7=[zeros(1,n-1),1];%寄存器7,表示移位寄存器的初态除了最后一位,其余全 0% m(r,1)=register7(n);%m ( r, 1)是的第 r 行第一列的取值 % for i=2:1:N%从2到N,连续取值 % register8(1)=mod(sum(y(r,:).*register7),2);%移位寄存器的向量与反馈系数的向量点 乘后,新向量的所有数模二加,得到一个数作为寄存器 8的第一位% for j=2:1:n%从2到N,连续取值 % register8(j)=register7(j-1);% 确定后 n-1 位% end register7=register8;%保存移位寄存器现在的值到 register1% m(r,i)=register7(n);%输出的书,从第 2位开始% end %现在得到了第r行的m序列% end %现在得到了第1到第r行的m序列% if(n2)%列出m1最大行数,超过会报错 % fprintf(m序列的行数小于等于 %1.0f,row)%显示之后要输入 m1的要求% end if(n==2)%列出m1最大行数,超过会报错 % fprintf(m序列的行数小于等于 1)%显示之后要输入 m1的要求% end fprintf(\n)% 换行 % pass=1;%判断m1序列是否有优选对,若有, pass在下面循环中置 0% while(pass==1) %若m1没有优选对,则循环 % nom仁input(请从矩阵y中选出你所要m1序列本愿多项式的行数:);%输入一个数赋给 nom1, number of m1,即 m1 的行数 % m仁m(nom1,:);%得到了你指定的 m1序列% rm=zeros(1,2An-1);%两个m序列的互相关性,用来判断 m优选对% s=zeros(1,2An-1);%m优选对中移位后相同数的个数 % d=zeros(1,2An-1);%m优选对中移位后相同数的个数 % register2=zeros(1,2An-1);%寄存器2,用以验证 m序列优选对时移位 % cmatch=0;%counter match优选对匹配的数量 % match=zeros(1,N);%匹配优选对所在的行数 % matchs=zeros(1,N);%match sequenee 匹配优选对的序列 % for k=1:row%对m序列每一行循环 % m2=m(k,:);%把m序列的第k行赋给 m2% register仁m2;%寄存器1,用以验证 m序列优选对时移位 % for i=1:2A n-1 A=mod((m1+register1),2);% 移位加 N 次 % for j=1:2An-1%逐位判断 ml与m2是否相同,判断 N次% if A(j)==0%若第j位位相同% s(i)=s(i)+1;%相同数加1,之后清零% end d(i)=N-s(i);%不同数减一,因为是 s(i)的因变量,不用清 0% end rm(i)=s(i)-d(i);%rm 是互相关函数,因为是 s(i)和d( i)的因变量,不用清 0% s(i)=0;%必须清0,不然k的循环序列就会叠加 % register2(1)=register1(N);% 以下三行为循环右移 % register1(2:N)=register1(1:N-1); register1(1)=register2(1); end maxrm=max(abs(rm));%maxrm为互相关值的最大绝对值,因为是 rm的因变量,所 以不用清0% if(mod(n,2)==1)% 对2除n求余,判断n的奇偶性% if(maxrm==2A(( n+1)/2)+1)%奇数判断互相关最大绝对值是否满足书上条件 4— 37% cmatch=cmatch+1;%匹配(即互为优选对)个数加 1% match(1,cmatch)=k;%匹配行数写入 match序列中% ma

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档